This commit is contained in:
Sameer Kankute
2026-03-20 16:48:27 +05:30
parent ec7c94c61f
commit 4d06b1cf0a
2 changed files with 14 additions and 27 deletions
@@ -15,7 +15,7 @@ LiteLLM keeps one OpenAI-compatible output shape while routing requests through
Two paths are covered:
| Path | When it runs | What LiteLLM does |
||||
| --- | --- | --- |
| **Native passthrough** | Provider natively supports `file_search` (OpenAI, Azure) | Decodes unified vector store ID → forwards to provider as-is |
| **Emulated fallback** | Provider doesn't support `file_search` (Anthropic, Bedrock, etc.) | Converts to a function tool → intercepts tool call → runs vector search → synthesizes OpenAI-format output |
@@ -102,7 +102,7 @@ print(response.output)
### Behavior Matrix
| Path | SDK model | Proxy model | Behavior |
|||||
| --- | --- | --- | --- |
| Native passthrough | `openai/gpt-4.1` | `gpt-4.1` | Provider executes native `file_search` |
| Emulated fallback | `anthropic/claude-sonnet-4-5` | `claude-sonnet` | LiteLLM converts to function tool and synthesizes OpenAI-format output |
@@ -220,30 +220,17 @@ validate_file_search_response(response)
## Q&A
### Q: Why do I see `UnsupportedParamsError`?
A: This usually means `file_search` was passed to a provider that does not support it natively and emulation could not route correctly.
Check:
- The model string is valid (for example, `anthropic/claude-sonnet-4-5`).
- `custom_llm_provider` resolves correctly so LiteLLM can load the provider config.
### Q: Why does vector search return no results?
A: Common causes:
- The vector store ID is wrong or has no files attached.
- In LiteLLM-managed stores, file ingestion is not complete (`status != completed`).
- The query is too narrow; try a broader query.
### Q: Why am I getting `403 Access denied` on vector store calls?
A: The caller does not have access to that vector store.
- The store may belong to another team.
- Use an admin/proxy key if your setup requires cross-team access.
### Q: Why are `annotations` empty in emulated mode?
A: `file_citation` annotations require `file_id` metadata in search results.
If your vector backend does not return file-level metadata, the answer text is still generated but citations can be empty.
- **Why do I see `UnsupportedParamsError`?** This usually means `file_search` was passed to a provider that does not support it natively and emulation could not route correctly. Check:
- The model string is valid (for example, `anthropic/claude-sonnet-4-5`).
- `custom_llm_provider` resolves correctly so LiteLLM can load the provider config.
- **Why does vector search return no results?** Common causes:
- The vector store ID is wrong or has no files attached.
- In LiteLLM-managed stores, file ingestion is not complete (`status != completed`).
- The query is too narrow; try a broader query.
- **Why am I getting `403 Access denied` on vector store calls?** The caller does not have access to that vector store.
- The store may belong to another team.
- Use an admin/proxy key if your setup requires cross-team access.
- **Why are `annotations` empty in emulated mode?** `file_citation` annotations require `file_id` metadata in search results. If your vector backend does not return file-level metadata, the answer text is still generated but citations can be empty.
+1 -1
View File
@@ -1433,7 +1433,7 @@ const learnSidebar = {
},
items: [
"tutorials/prompt_caching",
"tutorials/file_search_responses_api"
"tutorials/file_search_responses_api",
"tutorials/anthropic_file_usage",
"tutorials/gemini_realtime_with_audio",
"tutorials/litellm_proxy_aporia",