Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

Struktur des Dateikonfigurationsobjekts

Übersicht

Das fileConfig-Objekt ermöglicht es Ihnen, die Einstellungen fĂŒr die Dateiverarbeitung der Anwendung zu konfigurieren, einschließlich GrĂ¶ĂŸenbeschrĂ€nkungen und MIME-Typ-EinschrĂ€nkungen. Dieser Abschnitt bietet eine detaillierte AufschlĂŒsselung der Struktur des fileConfig-Objekts.

Es gibt 8 Hauptfelder unter fileConfig:

  • endpoints
  • serverFileSizeLimit
  • avatarSizeLimit
  • imageGeneration
  • fileTokenLimit
  • ocr
  • text
  • stt

Hinweise:

  • Zum Zeitpunkt der Erstellung dieses Dokuments unterstĂŒtzt der Assistants endpoint Dateitypen aus dieser Liste.
  • OpenAI, Azure OpenAI, Google und benutzerdefinierte endpoints unterstĂŒtzen Dateien ĂŒber die RAG API.
  • OpenAI, Azure OpenAI, Anthropic, Google und AWS Bedrock endpoints unterstĂŒtzen direkte Datei-Uploads ĂŒber Upload to Provider.
  • Die Abschnitte ocr, text und stt steuern die Dateiverarbeitung fĂŒr Funktionen wie Upload as Text und OCR
  • Alle anderen nicht erwĂ€hnten endpoints, wie Plugins, unterstĂŒtzen (noch) keine Datei-Uploads.
  • Der Assistants endpoint hat einen definierten endpoint-Wert von assistants. Alle anderen endpoints verwenden den definierten Wert default.
    • FĂŒr Endpunkte, die keine Assistants sind, können Sie die Dateieinstellungen fĂŒr alle unter default anpassen.
    • Wenn Sie Einstellungen fĂŒr ein bestimmtes endpoint anpassen möchten, können Sie die entsprechenden endpoint-Namen auflisten:
      • assistants
        • verwendet nicht "default", da es separate Standardwerte definiert, die sich von den anderen unterscheiden.
      • openAI
      • azureOpenAI
      • google
      • bedrock
      • YourCustomEndpointName
  • Sie können Werte weglassen; in diesem Fall verwendet die App die Standardwerte, wie sie fĂŒr den jeweiligen endpoint-Typ unten aufgefĂŒhrt sind.
  • LibreChat berechnet 1 Megabyte wie folgt: 1 x 1024 x 1024

Beispiel

fileConfig:
  endpoints:
    assistants:
      fileLimit: 5
      fileSizeLimit: 10
      totalSizeLimit: 50
      supportedMimeTypes:
        - "image/.*"
        - "application/pdf"
    openAI:
      disabled: true
    default:
      totalSizeLimit: 20
    YourCustomEndpointName:
      fileLimit: 5
      fileSizeLimit: 1000
      supportedMimeTypes:
        - "image/.*"
  serverFileSizeLimit: 1000
  avatarSizeLimit: 2
  fileTokenLimit: 100000
  imageGeneration:
    percentage: 100
    px: 1024
  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$"
  text:
    supportedMimeTypes:
      - "^text/(plain|markdown|csv|json|xml|html|css|javascript|typescript|x-python|x-java|x-csharp|x-php|x-ruby|x-go|x-rust|x-kotlin|x-swift|x-scala|x-perl|x-lua|x-shell|x-sql|x-yaml|x-toml)$"
  stt:
    supportedMimeTypes:
      - "^audio/(mp3|mpeg|mpeg3|wav|wave|x-wav|ogg|vorbis|mp4|x-m4a|flac|x-flac|webm)$"

serverFileSizeLimit

KeyTypeDescriptionExample
serverFileSizeLimitIntegerDie globale maximale GrĂ¶ĂŸe fĂŒr jede auf den Server hochgeladene Datei, angegeben in Megabyte (MB).Acts as an overarching limit for file uploads across all endpoints, ensuring that no file exceeds this size server-wide.
fileConfig:
  serverFileSizeLimit: 1000

avatarSizeLimit

KeyTypeDescriptionExample
avatarSizeLimitIntegerDie maximal zulĂ€ssige GrĂ¶ĂŸe fĂŒr Avatar-Bilder, angegeben in Megabyte (MB).Specifically tailored for user avatar uploads, allowing for control over image sizes to maintain consistent quality and loading times.
fileConfig:
  avatarSizeLimit: 2

imageGeneration

KeyTypeDescriptionExample
imageGenerationObjectEinstellungen bezĂŒglich der QualitĂ€t und Dimensionen der Bildgenerierungsausgabe.Allows configuration of either output size as a percentage relative to some base size or as an explicit pixel dimension.

imageGeneration unterstĂŒtzt die folgenden Parameter:

  • percentage (Ganzzahl)

    • Die AusgabegrĂ¶ĂŸe des generierten Bildes, ausgedrĂŒckt als Prozentsatz (z. B. bedeutet 100 100 % der BasisgrĂ¶ĂŸe).
    • Verwenden Sie dies, um die AusgabegrĂ¶ĂŸe des Bildes relativ zu einer Standard- oder OriginalgrĂ¶ĂŸe zu skalieren.
  • px (Ganzzahl)

    • Gibt die Ausgabebilddimension in Pixeln an (z. B. 1024).
    • Verwenden Sie dies, um die AusgabegrĂ¶ĂŸe des generierten Bildes unabhĂ€ngig von der BasisgrĂ¶ĂŸe explizit festzulegen.

Sie können nur einen dieser Parameter (percentage oder px) festlegen, nicht beide, abhÀngig von Ihrem Anwendungsfall.

Beispielkonfiguration:

fileConfig:
  imageGeneration:
    percentage: 100
    px: 1024

fileTokenLimit

KeyTypeDescriptionExample
fileTokenLimitNumberMaximale Anzahl an Tokens aus Textdateien, die vor dem KĂŒrzen in Prompts einbezogen werden sollen.fileTokenLimit: 100000

Beschreibung: Beim AnhĂ€ngen von Textinhalten kĂŒrzt LibreChat den Text zur Laufzeit auf das konfigurierte Token-Limit, unmittelbar bevor der Prompt erstellt wird.

Standard: 100000

fileConfig:
  fileTokenLimit: 100000

ocr

KeyTypeDescriptionExample
ocrObjectEinstellungen fĂŒr die OCR-Dateiverarbeitung (Optical Character Recognition).Configures which file types are processed using OCR.

Beschreibung: Der ocr-Abschnitt konfiguriert, welche Dateitypen mithilfe der OCR-FunktionalitÀt verarbeitet werden sollen, um Text aus visuellen Dokumenten zu extrahieren.

Hinweis: Dieser Abschnitt steuert den Abgleich von Dateitypen fĂŒr die OCR-Verarbeitung. Um Agent-Funktionen zu aktivieren und OCR-Dienste zu konfigurieren, siehe:

supportedMimeTypes

KeyTypeDescriptionExample
supportedMimeTypesArray of StringsListe der MIME-Typ-Muster fĂŒr Dateien, die mit OCR verarbeitet werden sollen.Uses regular expressions to match file types.

Standard: Bilder, PDFs und Office-Dokumente

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$"

text

KeyTypeDescriptionExample
textObjectEinstellungen fĂŒr die direkte Textdateianalyse ohne OCR.Configures which file types are processed as plain text files for direct content extraction.

Beschreibung: Der text-Abschnitt konfiguriert, welche Dateitypen mittels direkter Textextraktion verarbeitet werden sollen.

Hinweis: Die Textanalyse ist die Standardmethode, die von der Funktion „Als Text hochladen“ verwendet wird (gesteuert durch die context-FĂ€higkeit). Sie versucht zuerst, die Textanalyse-Bibliothek der RAG API zu verwenden. Wenn die RAG API nicht verbunden ist, greift sie auf eine einfachere Textextraktionsmethode zurĂŒck, ohne dass externe Dienste erforderlich sind. Weitere Informationen finden Sie unter Als Text hochladen.

supportedMimeTypes

KeyTypeDescriptionExample
supportedMimeTypesArray of StringsListe der MIME-Typ-Muster fĂŒr Dateien, die als Klartext geparst werden sollen.Uses regular expressions to match file types.

Standard: Alle Textdateien und gÀngigen Programmiersprachen

fileConfig:
  text:
    supportedMimeTypes:
      - "^text/(plain|markdown|csv|json|xml|html|css|javascript|typescript|x-python|x-java|x-csharp|x-php|x-ruby|x-go|x-rust|x-kotlin|x-swift|x-scala|x-perl|x-lua|x-shell|x-sql|x-yaml|x-toml)$"

stt

KeyTypeDescriptionExample
sttObjectEinstellungen fĂŒr die Verarbeitung von Speech-to-Text (STT)-Audiodateien.Configures which audio file types are processed using STT for transcription.

Beschreibung: Der stt Abschnitt konfiguriert, welche Audiodateitypen mithilfe der Speech-to-Text-FunktionalitĂ€t fĂŒr die Umwandlung von Audio in Text verarbeitet werden sollen.

supportedMimeTypes

KeyTypeDescriptionExample
supportedMimeTypesArray of StringsListe der MIME-Typ-Muster fĂŒr Audiodateien, die mit STT transkribiert werden sollen.Uses regular expressions to match audio file types.

Standard: GĂ€ngige Audioformate

fileConfig:
  stt:
    supportedMimeTypes:
      - "^audio/(mp3|mpeg|mpeg3|wav|wave|x-wav|ogg|vorbis|mp4|x-m4a|flac|x-flac|webm)$"

Hinweise:

  • Dateien, die text-Mustern entsprechen, werden mit einfacher Textextraktion verarbeitet
  • Dateien, die den ocr-Mustern entsprechen, werden mit dem bereitgestellten OCR-Dienst verarbeitet
  • Dateien, die den stt-Mustern entsprechen, werden mit Speech-to-Text-Transkription verarbeitet
  • VerarbeitungsprioritĂ€t: OCR > STT > Text-Parsing > Fallback
  • Dateien, die keinem Muster entsprechen, werden auf die Textanalyse zurĂŒckgreifen.

PrioritÀt der Dateiverarbeitung

LibreChat verarbeitet hochgeladene Dateien basierend auf dem MIME-Typ-Abgleich in der folgenden PrioritÀtsreihenfolge:

  1. OCR – Wenn die Datei ocr.supportedMimeTypes entspricht UND OCR konfiguriert ist
  2. STT - Wenn die Datei stt.supportedMimeTypes entspricht UND STT konfiguriert ist
  3. Text-Parsing – Wenn die Datei text.supportedMimeTypes entspricht
  4. Fallback – Text-Parsing als letzter Ausweg

Diese Verarbeitungsreihenfolge stellt eine optimale ExtraktionsqualitÀt sicher und erhÀlt gleichzeitig die FunktionalitÀt aufrecht, selbst wenn spezialisierte Dienste (OCR/STT) nicht konfiguriert sind.

Verarbeitungsbeispiele

PDF-Datei mit konfigurierter OCR:

  • Datei entspricht ocr.supportedMimeTypes
  • Verwendet OCR, um Text zu extrahieren
  • Bessere QualitĂ€t fĂŒr gescannte PDFs und Bilder

PDF-Datei ohne konfigurierte OCR:

  • Die Datei entspricht text.supportedMimeTypes (oder verwendet einen Fallback)
  • Verwendet die Text-Parsing-Bibliothek
  • Funktioniert gut fĂŒr digitale PDFs mit auswĂ€hlbarem Text

Python-Datei:

  • Datei entspricht text.supportedMimeTypes
  • Verwendet Text-Parsing (kein OCR erforderlich)
  • Direkte Textextraktion

Audiodatei mit konfiguriertem STT:

  • Datei entspricht stt.supportedMimeTypes
  • Verwendet STT, um Audio in Text zu transkribieren

Bilddatei ohne konfiguriertes OCR:

  • Datei entspricht ocr.supportedMimeTypes, aber OCR ist nicht verfĂŒgbar
  • FĂ€llt auf Text-Parsing zurĂŒck
  • EingeschrĂ€nkte ExtraktionsfĂ€higkeit ohne OCR

Dieses PrioritĂ€tssystem ermöglicht es Funktionen wie „Upload as Text“, ohne OCR-Konfiguration zu funktionieren, wĂ€hrend gleichzeitig OCR genutzt wird, sofern verfĂŒgbar, um die ExtraktionsqualitĂ€t zu verbessern.

endpoints

KeyTypeDescriptionExample
endpointsRecord/ObjectKonfiguriert die Dateiverarbeitungseinstellungen fĂŒr einzelne endpoints und ermöglicht eine Anpassung auf Basis des jeweiligen endpoints.Specifies file handling configurations for individual endpoints, allowing customization per endpoint basis.

Beschreibung: Jedes Objekt unter endpoints ist ein Datensatz, der die folgenden Einstellungen enthalten kann:

Übersicht

  • disabled
    • Ob die Dateiverarbeitung fĂŒr den endpoint deaktiviert ist.
  • fileLimit
    • Die maximale Anzahl an Dateien, die pro Upload-Anfrage erlaubt sind.
  • fileSizeLimit
    • Die maximale GrĂ¶ĂŸe fĂŒr eine einzelne Datei. In Einheiten von MB (z. B. 20 fĂŒr 20 Megabyte verwenden)
  • totalSizeLimit
    • Die maximale GesamtgrĂ¶ĂŸe fĂŒr alle Dateien in einer einzelnen Anfrage. In Einheiten von MB (verwenden Sie z. B. 20 fĂŒr 20 Megabyte)
  • supportedMimeTypes
    • Eine Liste von Regular Expressions, die festlegt, welche MIME-Typen fĂŒr den Upload zulĂ€ssig sind. Dies kann angepasst werden, um Dateitypen einzuschrĂ€nken.

disabled

KeyTypeDescriptionExample
disabledBooleanGibt an, ob das Hochladen von Dateien fĂŒr einen bestimmten endpoint deaktiviert ist.Setting this to `true` prevents any file uploads to the specified endpoint, overriding any other file-related settings.

Standard: false

openAI:
  disabled: true

fileLimit

SchlĂŒssel:

KeyTypeDescriptionExample
fileLimitIntegerDie maximale Anzahl an Dateien, die in einer einzelnen Upload-Anfrage erlaubt sind.Helps control the volume of uploads and manage server load.

Standard: Variiert je nach endpoint

assistants:
  fileLimit: 5

fileSizeLimit

SchlĂŒssel:

KeyTypeDescriptionExample
fileSizeLimitIntegerDie maximal zulĂ€ssige GrĂ¶ĂŸe fĂŒr jede einzelne Datei, angegeben in Megabyte (MB).This limit ensures that no single file exceeds the specified size, allowing for better resource allocation and management.

Standard: Variiert je nach endpoint

YourCustomEndpointName:
  fileSizeLimit: 1000

totalSizeLimit

SchlĂŒssel:

KeyTypeDescriptionExample
totalSizeLimitIntegerDie maximale GesamtgrĂ¶ĂŸe fĂŒr alle Dateien in einer einzelnen Anfrage, angegeben in Megabyte (MB).This setting is crucial for preventing excessive bandwidth and storage usage by any single upload request.

Standard: Variiert je nach endpoint

assistants:
  totalSizeLimit: 50

supportedMimeTypes

SchlĂŒssel:

KeyTypeDescriptionExample
supportedMimeTypesArray of StringsEine Liste von regulĂ€ren AusdrĂŒcken, die die fĂŒr den Upload zulĂ€ssigen MIME-Typen definieren.This allows for precise control over the types of files that can be uploaded. Invalid regex is ignored.

Standard: Variiert je nach endpoint

assistants:
  supportedMimeTypes:
      - "image/.*"
      - "application/pdf"

Wie finden Sie diese Anleitung?