Skip to content

Search & OCR

Search the web or documents across 12 providers (Brave, Tavily, Google PSE, etc.):

import asyncio
import os
from liter_llm import create_client
from liter_llm._internal_bindings import SearchRequest
async def main() -> None:
client = create_client(api_key=os.environ["BRAVE_API_KEY"])
request = SearchRequest.from_json(
'{"model":"brave/web-search","query":"What is Rust programming language?","max_results":5}'
)
response = await client.search(request)
for result in response.results:
print(f"{result.title}: {result.url}")
asyncio.run(main())
Parameter Type Description
model string Search provider (e.g. "brave/web-search")
query string Search query
max_results int Maximum results to return
search_domain_filter array Restrict to specific domains
country string ISO country code for localized results

The registry ships 12 search providers. Browse the full Providers capability matrix; the most common are:

Provider Prefix
Brave brave/
Tavily tavily/
Google PSE google_pse/
Serper serper/
DuckDuckGo duckduckgo/
Exa exa_ai/
Firecrawl firecrawl/
Linkup linkup/
Parallel AI parallel_ai/
Perplexity perplexity/
SearXNG searxng/
DataForSEO dataforseo/

Extract text from documents via OCR across 4 providers (Mistral, Azure Doc Intelligence, etc.):

import asyncio
import os
from liter_llm import create_client
from liter_llm._internal_bindings import OcrRequest
async def main() -> None:
client = create_client(api_key=os.environ["MISTRAL_API_KEY"])
request = OcrRequest.from_json(
'{"model":"mistral/mistral-ocr-latest",'
'"document":{"type":"document_url","url":"https://example.com/invoice.pdf"}}'
)
response = await client.ocr(request)
for page in response.pages:
print(f"Page {page.index}: {page.markdown[:100]}...")
asyncio.run(main())
Parameter Type Description
model string OCR provider (e.g. "mistral/mistral-ocr-latest")
document object Document input (URL or base64)
pages array Specific pages to process (1-indexed)
include_image_base64 bool Include extracted images

URL:

{ "type": "document_url", "url": "https://example.com/invoice.pdf" }

Base64:

{ "type": "base64", "data": "...", "media_type": "application/pdf" }