Belgeler için OCR
LibreChat'in dosya yükleme özelliklerinde metin çıkarımını geliştirmek için Optik Karakter Tanıma (OCR) özelliğini nasıl yapılandıracağınızı öğrenin.
LibreChat içindeki OCR (Optical Character Recognition), dosyalardan metin ayıklamak için isteğe bağlı bir geliştirmedir.
Metin Olarak Yükle
"Upload as Text" özelliği (sohbet içinden) aynı şekilde çalışır:
fileConfig.ocr.supportedMimeTypesile eşleşen dosyalar, eğer mevcutsa OCR kullanır- OCR yapılandırılmamışsa metin ayrıştırmaya geri döner
- Özellikle metin içeren görseller, taranmış belgeler ve karmaşık PDF'ler için kullanışlıdır
- İşleme önceliği: OCR > STT > metin ayrıştırma
- Ayrıntılar için Upload as Text belgelerine bakın.
Dosya Bağlamı (ajanlar için)
Agent Builder'ın File Context bölümü aracılığıyla dosya yüklediğinizde:
- Metin, varsayılan olarak metin ayrıştırma (yapılandırılmışsa ve dosya eşleşiyorsa OCR/STT) kullanılarak çıkarılır
- Çıkarılan metin, ajanın sistem talimatlarının bir parçası olarak saklanır
- Ajan, bu bağlama tüm konuşmalarda başvurabilir
- OCR hizmeti isteğe bağlıdır - özellik, metin ayrıştırma (text parsing) kullanarak bu hizmet olmadan da çalışır
"Dosya Bağlamı" (File Context) olarak yüklenen dosyalar, metin çıkarımı için işlenir ve ardından bu metin, Agent'ın sistem talimatlarına eklenir. Bu yöntem; belgeler, kod dosyaları, PDF'ler veya tam metin içeriğinin Agent'ın talimatlarına dahil edilmesini istediğiniz metin içeren görseller için idealdir.
Not: Çıkarılan metin, ajanın sistem talimatlarına dahil edilir.
İsteğe Bağlı OCR Yapılandırması
Hem Agent File Context hem de Upload as Text, metin ayrıştırma kullanarak kutudan çıktığı gibi çalışır. Görseller ve taranmış belgeler için çıkarma kalitesini artırmak isterseniz, isteğe bağlı olarak bir OCR hizmeti yapılandırabilirsiniz:
# librechat.yaml
endpoints:
agents:
capabilities:
- "context" # Enables both agent file context and upload as text
- "ocr" # Optionally enhances both with OCR
ocr:
strategy: "mistral_ocr"
apiKey: "${OCR_API_KEY}"
baseURL: "https://api.mistral.ai/v1"
mistralModel: "mistral-ocr-latest"Not: context özelliği varsayılan olarak etkindir. Yalnızca görseller ve taranmış belgeler için gelişmiş ayıklama kalitesi istiyorsanız OCR'yi (ocr özelliği) yapılandırmanız gerekir.
OCR Yeteneklerine Genel Bakış
LibreChat içindeki OCR işlevselliği şunları sağlar:
- Görsellerden ve belgelerden metin ayıklayın
- Belge yapısını ve biçimlendirmesini koruyun
- Çok sütunlu metinler dahil olmak üzere karmaşık düzenleri işleyin
- Tabloları, denklemleri ve diğer özel içerikleri yönetin
- Çok dilli içerikle çalışma
OCR Stratejileri
LibreChat, farklı dağıtım ihtiyaçlarını ve gereksinimlerini karşılamak için birden fazla OCR stratejisini destekler. Altyapınıza ve uyumluluk gereksinimlerinize en uygun stratejiyi seçin.
1. Mistral OCR (Varsayılan)
Varsayılan strateji, doğrudan Mistral'in bulut API hizmetini kullanır. Bu en basit kurulumdur ve yalnızca Mistral'den bir API anahtarı gerektirir.
Ortam Değişkenleri:
# `.env`
OCR_API_KEY=your-mistral-api-key
# OCR_BASEURL=https://api.mistral.ai/v1 # this is the default valueYapılandırma:
# `librechat.yaml`
ocr:
mistralModel: "mistral-ocr-latest" # Optional: Specify Mistral model, defaults to "mistral-ocr-latest"
apiKey: "your-mistral-api-key" # Optional: Defaults to OCR_API_KEY env variable
baseURL: "https://api.mistral.ai/v1" # Optional: Defaults to OCR_BASEURL env variable, or Mistral's API if no variable set
strategy: "mistral_ocr" # Optional: Defaults to "mistral_ocr"Temel Özellikler:
- Belge Yapısı Koruma: Başlıklar, paragraflar, listeler ve tablolar gibi biçimlendirmeyi korur
- Çok Dilli Destek: Metinleri birden fazla dilde ve yazı sisteminde işler
- Karmaşık Düzen İşleme: Çok sütunlu metinleri ve karma içerikleri işler
- Matematiksel İfade Tanıma: Denklem ve formülleri doğru bir şekilde işler
- Yüksek Hızlı İşleme: Dakikada 2000 sayfaya kadar işler
Hususlar:
- Maliyet: Mistral OCR ücretli bir API hizmeti olduğundan (ücretsiz denemeler mevcut olsa da) kullanım maliyet doğurabilir.
- Veri Gizliliği: Mistral OCR aracılığıyla işlenen veriler, Mistral'in bulut ortamına ve hizmet şartlarına tabidir.
- Belge Sınırlamaları:
- Maksimum dosya boyutu: 50 MB
- Maksimum belge uzunluğu: 1.000 sayfa
2. Azure Mistral OCR
Azure AI Foundry kullanan kuruluşlar için Mistral OCR modellerini Azure altyapınıza dağıtabilirsiniz. Şu anda Mistral OCR 2503 modeli Azure dağıtımı için kullanılabilirdir.
Yapılandırma:
# `librechat.yaml`
ocr:
mistralModel: "deployed-mistral-ocr-2503" # Should match your Azure deployment name
apiKey: "${AZURE_MISTRAL_OCR_API_KEY}" # Reference to your Azure API key in .env
baseURL: "https://your-deployed-endpoint.models.ai.azure.com/v1" # Your Azure endpoint
strategy: "azure_mistral_ocr" # Use Azure strategyAzure Model Bilgileri: Azure AI Foundry üzerinde mevcut olan en güncel Mistral OCR modelini buradan inceleyebilirsiniz (Azure aboneliği gerektirir):
https://ai.azure.com/explore/models/mistral-ocr-2503
3. Google Vertex AI Mistral OCR
Google Cloud Platform kullanan kuruluşlar için Mistral OCR modellerini Google Cloud Vertex AI altyapınıza dağıtabilirsiniz.
Ortam Değişkenleri:
# `.env`
# Option 1: File path
GOOGLE_SERVICE_KEY_FILE=/path/to/your/service-account-key.json
# Option 2: URL to fetch the key
GOOGLE_SERVICE_KEY_FILE=https://your-secure-server.com/service-account-key.json
# Option 3: Base64 encoded JSON
GOOGLE_SERVICE_KEY_FILE=eyJ0eXBlIjogInNlcnZpY2VfYWNjb3VudCIsICJwcm9qZWN0X2lkIjogInlvdXItcHJvamVjdC1pZCIsIC4uLn0=
# Option 4: Raw JSON string
GOOGLE_SERVICE_KEY_FILE='{
"type": "service_account",
"project_id": "your-project-id",
"private_key_id": "...",
"private_key": "-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----\n",
"client_email": "...",
"client_id": "...",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "..."
}'Yapılandırma:
# `librechat.yaml`
ocr:
mistralModel: "mistral-ocr-2505" # Model name as deployed in Vertex AI
strategy: "vertexai_mistral_ocr" # Use Google Vertex AI strategyKurulum Gereksinimleri:
- Google Vertex AI üzerinde bir Mistral OCR modeli (örneğin, mistral-ocr-2505) dağıtın
- Vertex AI endpoint'ine erişmek için uygun izinlere sahip bir hizmet hesabı (service account) oluşturun
- Hizmet hesabı JSON anahtar dosyasını indirin
- Desteklenen yöntemlerden birini kullanarak
GOOGLE_SERVICE_KEY_FILEortam değişkenini ayarlayın
4. Özel OCR (Planlandı)
Özel OCR sağlayıcıları ve kullanıcı tanımlı stratejiler için destek, gelecek sürümlerde planlanmaktadır.
5. Dosyaları Sağlayıcıya Yükle (Doğrudan)
Desteklenen LLM Sağlayıcıları (OpenAI, AzureOpenAI, Anthropic, Google ve AWS Bedrock) ve ilgili modelleri için dosyalar artık doğrudan mesaj eki olarak sağlayıcı API'lerine gönderilebilir; bu da sağlayıcının, dosya eki açılır menüsündeki Upload to Provider seçeneğini kullanarak dosyaları ayrıştırmak için kendi yerel OCR uygulamalarını kullanmasına olanak tanır.
Şu anda yukarıda bahsedilen beş sağlayıcının tamamı görseller ve PDF'ler için destek sunmakta olup, Google ayrıca uyumlu çok modlu (multimodal) modellerle birlikte kullanıldığında ses ve video dosyaları için de destek sağlamaktadır. AWS Bedrock ayrıca CSV, DOC, DOCX, XLS, XLSX, HTML, TXT ve Markdown belgelerini de desteklemektedir.
Azure OpenAI PDF Yükleme Uyarısı
Azure OpenAI uç noktaları için, PDF dosyalarına yönelik Sağlayıcıya Yükle (Upload to Provider) seçeneği yalnızca Responses API kullanılırken mevcuttur. Azure OpenAI'ın Chat Completions API'si görselleri destekler ancak PDF dosyası eklerini desteklemez.
Azure OpenAI ile sohbetinizin ekler açılır menüsünde PDF'ler için 'Upload to Provider' seçeneğini görmüyorsanız, Parameters panelinde Responses API parametresinin etkinleştirildiğinden emin olun.
Not: Standart OpenAI endpoint'leri, hem Chat Completions hem de Responses API'lerinde PDF yüklemelerini destekler.
AWS Bedrock Belge Yükleme Sınırları
AWS Bedrock, aşağıdaki formatlar için Converse API aracılığıyla belge yüklemeyi destekler: PDF, CSV, DOC, DOCX, XLS, XLSX, HTML, TXT ve Markdown (.md)
Kısıtlamalar:
- Belge başına maksimum dosya boyutu: 4.5 MB
- Dosya adları, Bedrock'un adlandırma gereksinimlerine (alfanümerik, boşluklar, kısa çizgiler, parantezler, köşeli parantezler; maksimum 200 karakter) uyacak şekilde temizlenir.
Bedrock yapılandırması hakkında daha fazla ayrıntı için AWS Bedrock kurulum kılavuzuna bakın.
Ayrıntılı Yapılandırma
Ek ve ayrıntılı yapılandırma seçenekleri için OCR Config Object Structure bölümüne bakın.
OCR İşleme Yapılandırması
fileConfig kullanarak OCR ile hangi dosya türlerinin işleneceğini kontrol edin:
fileConfig:
ocr:
supportedMimeTypes:
- "^image/(jpeg|gif|png|webp|heic|heif)$"
- "^application/pdf$"
- "^application/vnd\\.openxmlformats-officedocument\\.(wordprocessingml\\.document|presentationml\\.presentation|spreadsheetml\\.sheet)$"
- "^application/vnd\\.ms-(word|powerpoint|excel)$"
- "^application/epub\\+zip$"Bu desenlerle eşleşen dosyalar şu durumlarda OCR kullanacaktır:
- Ajan dosya bağlamına yüklendi (OCR yapılandırılmışsa her zaman)
- Sohbette metin olarak yüklendi (OCR yapılandırılmışsa; aksi takdirde metin ayrıştırmaya geri döner)
Dosya işleme yapılandırması hakkında daha fazla ayrıntı için File Config Object Structure bölümüne bakın.
Ajan Dosya Bağlamı için Kullanım Durumları
Agent File Context şunlar için idealdir:
- Kalıcı Ajan Bilgisi: Bir ajanın sistem talimatlarına belgeler, politikalar veya referans materyalleri ekleyin
- Özelleştirilmiş Ajanlar: Belgelerden alan bilgisine sahip ajanlar oluşturun
- Belge Tabanlı Asistanlar: Her zaman belirli kılavuzları veya rehberleri referans alan ajanlar oluşturun
- Kod Dosyaları: Ajan talimatlarına kod örnekleri veya kütüphaneler ekleyin
- Yapılandırılmış Veri: Ajanın referans alması için CSV, JSON veya diğer yapılandırılmış verileri ekleyin
OCR yapılandırıldığında, Dosya Bağlamı (File Context) şunları da yönetir:
- Taranmış Belge İşleme: Görsellerden veya taranmış PDF'lerden metin ayıklayın ve depolayın
- Görüntüden Metin Çıkarma: Ekran görüntülerinden veya belge fotoğraflarından metin çıkarın
Sohbet içindeki geçici belge soruları için Upload as Text bölümüne bakın.
Sınırlamalar
- Metin çıkarma doğruluğu; dosya türüne, görüntü kalitesine, belge karmaşıklığına ve metin netliğine bağlı olarak değişiklik gösterebilir.
- Bazı özel biçimlendirmeler veya sıra dışı düzenler tam olarak korunmayabilir
- Çok büyük belgeler, temel alınan AI modellerinin token sınırlamaları nedeniyle kesilebilir.
- Görseller ve taranmış belgelerle en iyi sonuçları almak için bir OCR hizmeti yapılandırın
Gelecek İyileştirmeler
LibreChat, gelecek sürümlerde OCR yeteneklerini genişletmeyi planlıyor:
- Özel OCR sağlayıcıları için destek
- Kullanıcıların tercih ettikleri OCR hizmetini seçmelerine olanak tanıyan bir
user_providedstrateji seçeneği - Açık kaynaklı OCR çözümleri ile entegrasyon
- Gelişmiş belge işleme seçenekleri
- OCR ayarları üzerinde daha ayrıntılı kontrol
- Mistral, OCR API'lerini GCP ve AWS gibi bulut ortakları aracılığıyla ve katı veri gizliliği gereksinimleri olan kuruluşlar için kurumsal kendi kendine barındırma (self-hosting) seçenekleriyle kullanıma sunmayı planlıyor (kaynak)
- LibreChat, Mistral'in OCR API'sinin sonuçlarda bunları sağlayabilmesine rağmen, OCR sürecinden elde edilen ayrıştırılmış görsel içeriğini şu anda yanıtlarına dahil etmemektedir. Bu özellik gelecekteki güncellemelerde desteklenebilir.
OCR yapılandırması hakkında daha fazla bilgi için OCR Yapılandırma Nesnesi Yapısı bölümüne bakın.
Bu rehber nasıl?