Skip to content

feat(requesty): add Requesty provider#2435

Open
Thibaultjaigu wants to merge 1 commit into
567-labs:mainfrom
Thibaultjaigu:feat/requesty-provider
Open

feat(requesty): add Requesty provider#2435
Thibaultjaigu wants to merge 1 commit into
567-labs:mainfrom
Thibaultjaigu:feat/requesty-provider

Conversation

@Thibaultjaigu

Copy link
Copy Markdown

Summary

Adds Requesty — an OpenAI-compatible LLM router — as a provider, mirroring the existing OpenRouter provider (instructor/v2/providers/openrouter/). Requesty exposes 400+ models through one endpoint, addressed as provider/model.

Changes

  • instructor/v2/providers/requesty/from_requesty() factory + RequestyJSONSchemaHandler (mirrors the OpenRouter provider; reuses the generic OpenAI-compatible JSON-schema wiring)
  • instructor/v2/core/providers.pyProvider.REQUESTY + get_provider() URL detection
  • instructor/v2/core/provider_specs.pyPROVIDER_SPECS entry (TOOLS / JSON_SCHEMA / MD_JSON / PARALLEL_TOOLS)
  • instructor/v2/providers/openai/handlers.py — Requesty added to the OpenAI-compat + parallel-tools provider sets (same as OpenRouter)
  • instructor/__init__.py — export + lazy import for from_requesty
  • instructor/v2/auto_client.py_build_requesty() (base URL https://router.requesty.ai/v1, env REQUESTY_API_KEY) + requesty in the provider builders and supported_providers
  • docs/integrations/requesty.md + mkdocs.yml nav + examples/open_source_examples/requesty.py + CHANGELOG entry

Testing

Verified end-to-end through the real from_provider("requesty/openai/gpt-4o-mini") code path against the live endpoint: a structured extraction into a Pydantic model returned the expected value. ruff check is clean on the touched files.

I work at Requesty. This mirrors the existing OpenRouter provider as closely as possible. Happy to adjust or close it if it's not a fit.

Add Requesty (https://requesty.ai), an OpenAI-compatible LLM router, as a
provider, mirroring the existing OpenRouter provider.

- instructor/v2/providers/requesty/ (from_requesty factory + JSON-schema handler)
- Provider.REQUESTY enum + get_provider URL detection
- PROVIDER_SPECS spec entry + OpenAI-compat/parallel-tools registration
- from_provider('requesty/<provider>/<model>') dispatch + _build_requesty
- instructor.__init__ export + lazy import
- docs/integrations/requesty.md + mkdocs nav + example + CHANGELOG

Signed-off-by: Thibault Jaigu <thibault.jaigu@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant