.env を使用して行われます。example.env をコピーして値を入力してください:
設定レベル
各統合には、その重要度を示す設定レベルがあります:注: 管理者が設定したモデル(Admin → Models ページ)は、LLM 環境変数の代わりになります。ヘルスチェックは両方のソースを考慮します。
フロントエンド(ローカル開発のみ)
フロントエンドにはローカル開発のみの別の環境ファイルがあります:frontend/.env.local。
このファイルは Docker では使用されません。 Docker コンテナ内では、Next.js が /api/* を Python バックエンドに内部的にプロキシします(ポート 8000 はコンテナ内部)ため、フロントエンド環境ファイルは不要です。
ローカル開発では、デフォルト設定がそのまま機能します — バックエンドがデフォルトポートで実行されている場合、frontend/.env.local を作成する必要はありません。
オーバーライドが必要な場合は、frontend/.env.local を手動で作成してください:
ビルド時の注意:NEXT_PUBLIC_*変数はpnpm build時に JS バンドルに埋め込まれます。実行時に変更する場合(例:ルート.env経由)は効果がありません — これが、ローカル開発のみでfrontend/.env.localに配置される理由です。
LLM (必須)
解決順序: ユーザー設定 → Admin モデル (DB) → ENV フォールバック。Admin → Models で「General」ロールのモデルが設定されている場合、これらの ENV 変数はフォールバックのみとして機能します。ヘルスチェックは両方のソースを考慮します。
MarkItDown OCR 解像度
convert_to_markdown 組み込みツールと RAG 取り込みパイプラインは、Microsoft の MarkItDown と公式の markitdown-ocr プラグインを使用して、ドキュメントからテキストを抽出します。ビジョン対応 LLM が利用可能な場合、埋め込み画像とスキャン PDF ページの OCR も含まれます。
Vision LLM 解像度順序(最初にマッチしたものが優先):
推理モデルは OCR に優先されません。 推理層(
o1、o3-mini、DeepSeek-R1)は歴史的にビジョンサポートが不足しており、OCR には不適切なツールです — OCR は知覚タスクであり、熟考ではありません。ワークスペースに supports_vision=True の推理モデルのみがある場合、プライマリ LLM パスを介して選択されますが、リゾルバーは fast/general より上にランク付けしません。
ゼロリグレッション フォールバック:どのレベルでもビジョン対応モデルが見つからない場合、OCR は静かに無効化され、MarkItDown はテキストのみモードで実行されます。Word/PowerPoint/Excel 埋め込み画像 OCR は利用不可になります(この機能がリリースされる前と同じ)が、その他すべてのテキスト抽出(見出し、表、段落テキスト)は変わらず機能し続けます。この機能を追加することで、抽出が以前の動作より悪くなるケースは決してありません。
非 OpenAI プロバイダー(Anthropic、Google Gemini など) は透過的にサポートされます:解像度された LLM は LiteLLMOpenAIShim でラップされ、chat.completions.create(...) 呼び出しを litellm.completion() 経由でルーティングします。これはプロバイダー固有のメッセージ形式変換(例:Anthropic の source.type="base64" 画像ブロック)を処理します。1 つのシムが LiteLLM がサポートするすべてのプロバイダーをカバーします — 新しいプロバイダーを追加するのに FIM One でのコード変更はゼロです。
拡張思考(推論)
LLM_REASONING_EFFORT が設定されると、FIM One はモデルの拡張思考機能を有効にし、内部の思考の連鎖を UI の「thinking」ステップで表示します。FIM One は LiteLLM を使用して、推論努力パラメータを各プロバイダーのネイティブ形式に自動的に変換します。
サポートされているプロバイダー
LiteLLM は
LLM_BASE_URL からプロバイダーを自動検出し、正しい API 形式にマッピングします。不明な URL は OpenAI 互換として扱われます。
重要な注意事項
推論を伴う温度制約
推論がアクティブな場合、一部のプロバイダーは温度制限を課します:- Anthropic: 拡張思考が有効な場合、
temperature=1が必須です。Anthropic と拡張思考を使用する場合、LLM_TEMPERATURE=1を設定する必要があります — 思考が有効な場合、Anthropic は他の値を拒否します。 - OpenAI GPT-5.x: すべての場合において
temperature=1のみをサポートしています。LiteLLM のdrop_paramsフィルタリングはこれを自動的に処理します — サポートされていない温度値は自動的にドロップされます。GPT-5.x の場合、ユーザーアクションは不要です。
LLM_REASONING_BUDGET_TOKENS の動作方法
この変数は主にAnthropicパスで意味があります。設定されると、自動計算されたバジェットをオーバーライドし、LiteLLM経由でthinkingパラメータ内のbudget_tokensとして送信されます。設定されない場合、バジェットはLLM_MAX_OUTPUT_TOKENS x努力比率から導出されます:
最小バジェットは1,024トークンです(Anthropicのハード最小値)。
OpenAIとGeminiの場合、プロバイダーは
reasoning_effortレベルに基づいてトークン割り当てを内部的に処理します — LLM_REASONING_BUDGET_TOKENSは効果がありません。
エージェント実行
ReAct エージェント
DAG Planner
ドメイン分類
ReAct と DAG 実行の前に実行される独立した LLM ベースのドメイン検出レイヤーを制御します。クエリが専門ドメインとして分類されると、システムはドメイン対応機能をアクティブ化します:モデルのエスカレーション、ドメイン固有の SOP 指示、および引用検証(DAG のみ)。Context Guard
会話がモデルの制限を超えるのを防ぐ自動コンテキストウィンドウ管理を制御します。コンテンツガードレール
入力または出力のコンテンツを検査するガードレールのコンマ区切り名。ツール許可ゲート(core/hooks/*)およびセキュリティレイヤー(core/security/*)とは独立しています。全体像についてはコンテンツガードレールを参照してください。
エージェント ワークスペース
システム
Webツール(オプション)
クイックスタートのヒント:JINA_API_KEYを設定するだけで、Web検索、Webフェッチ、埋め込み、リランキングがすべて一度に有効になります — 1つのキーで4つのサービスが利用できます。以下の変数で各サービスを個別にオーバーライドできます。
RAG & ナレッジベース(推奨)
埋め込み
埋め込みはテキストをベクトルに変換し、ナレッジベース検索に使用します。FIM One は標準的な OpenAI互換の/v1/embeddings エンドポイントを使用するため、Jina だけでなく、このインターフェースを公開しているあらゆるプロバイダーで動作します。
プロバイダーの例 — 3 つの変数を設定するだけで切り替えられます:
検索
Reranker
Rerankerは取得したドキュメントを再スコアリングして関連性を向上させます。3つのプロバイダーがサポートされており、RERANKER_PROVIDERで選択するか、利用可能なAPIキーからシステムに自動検出させることができます。
JinaはJINA_API_KEYを使用します(上記のWeb Toolsから)。OpenAIはLLM_API_KEY/LLM_BASE_URLを再利用します — 追加キーは不要です。Cohereは独自のCOHERE_API_KEYが必要です。
Rerankerはオプションです — ナレッジベース検索はフュージョンスコアリングを使用して、これなしで機能します。埋め込みはナレッジベース機能に推奨されます。
ベクトルストア
コード実行
セキュリティ:localモードはAIが生成したコードをホスト上で直接実行します。インターネット公開またはマルチユーザーデプロイメントの場合は、常にCODE_EXEC_BACKEND=dockerを設定してください。
ツール成果物
ツール実行(コード実行、テンプレートレンダリング、画像生成)によって生成されたファイルのサイズ制限。ドキュメント処理(オプション)
アップロードされたPDF/DOCXファイルがLLM消費用にどのように処理されるかを制御します。ビジョン対応モデル(GPT-4o、Claude 3/4、Gemini)は、より高い忠実度のためにレンダリングされたPDFページを画像として受け取ることができます。
注: モデルごとのビジョンサポートは、Admin → Modelsのsupports_visionトグルで設定されます。明示的に設定されていない場合、システムはモデル名からビジョン機能を自動検出します。
画像生成(オプション)
Email (SMTP) (推奨)
SMTP_HOST、SMTP_USER、SMTP_PASS がすべて設定されている場合、email_send ビルトインツールが自動的に登録されます。
コネクタ
プラットフォーム
ワークフロー実行の保持
古いワークフロー実行を自動的に削除するバックグラウンドクリーンアップタスク。ワークフロー単位のオーバーライド(ワークフロー設定UIで設定)がこれらのグローバルデフォルトより優先されます。チャネル確認リクエスト有効期限
古い保留中の承認リクエスト(FeishuGateHook などのチャネルフックまたは Approval Playground によって生成される)を期限切れとしてマークするバックグラウンドスイーパー。忘れられたカードを数日後にクリックしても、既に破棄されたエージェント状態が反転しないようにします。
OAuth(オプション)
プロバイダーに対してCLIENT_ID と CLIENT_SECRET の両方が設定されている場合、ログインページに対応する OAuth ボタンが自動的に表示されます。
本番環境 = ローカルではオプション(デフォルト値が機能します)ですが、インターネット公開デプロイメントでは必須です。
各プロバイダーに登録するOAuth コールバックURL
バックエンドは、コールバックURLを以下のように構成します:{API_BASE_URL}/api/auth/oauth/{provider}/callback
Cloudflare Tunnel(オプション)
Cloudflareのネットワークを通じてすべてのトラフィックをルーティングし、ポートを直接公開しません。Nginx、SSLサーティフィケート、ファイアウォールルールを開く必要がなくなります。セットアップ手順については、本番環境デプロイメントセクションを参照してください。Analytics (Optional)
すべての分析プロバイダーはオプションです。任意の組み合わせを設定できます — すべてのアクティブなプロバイダーが同時に読み込まれます。すべてを空白のままにすると、分析は完全に無効になります(ローカル開発では推奨)。
すべての NEXT_PUBLIC_* 分析変数はビルド時です — 変更を反映させるにはフロントエンドの再ビルドが必要です。
Stripe Billing(オプション)
Stripe は Pro サブスクリプションを提供します。3つの変数をすべて空白のままにすると、課金が無効になります——FIM One の残りの機能は変わりません。STRIPE_SECRET_KEY と STRIPE_WEBHOOK_SECRET の両方を一緒に設定する必要があります。部分的な設定は最初の使用時にエラーが発生します。