kuswardhanietidims-svg opened a new pull request, #11997:
URL: https://github.com/apache/seatunnel/pull/11997

   This adds **OrcaRouter** as a first-class LLM provider in the SeaTunnel AI 
CLI, so users can point `AI_PROVIDER=orcarouter` and immediately generate 
production-ready SeaTunnel pipeline configs through the gateway — instead of 
treating it as an anonymous `OPENAI_BASE_URL` override.
   
   [OrcaRouter](https://www.orcarouter.ai) is an OpenAI-compatible AI gateway 
built for both models and agents. Like OpenRouter, it exposes a provider/model 
namespace across many models — but it also combines adaptive routing, automatic 
failover, zero-markup inference, observability, guardrails, and agent-tool 
governance behind the same endpoint. Adding `orcarouter` as a first-class 
provider means SeaTunnel users can use that stack directly, without treating 
OrcaRouter as a custom base URL.
   
   It also runs gateway-level, zero-trust security for AI agents on the same 
endpoint — screening every prompt/response and governing every tool call on a 
default-deny basis, with no application code changes.
   
   The provider mirrors the existing `openai` provider exactly: OrcaRouter 
speaks the OpenAI Chat Completions protocol, so `OrcaRouterProvider` subclasses 
`OpenAIProvider` and only overrides the base URL 
(`https://api.orcarouter.ai/v1`), the credential env var 
(`ORCAROUTER_API_KEY`), and the default model (`orcarouter/auto`, which 
auto-grades and auto-routes each request). Model IDs use the gateway's 
`provider/model` namespace (e.g. `deepseek/deepseek-v4-pro`, 
`openai/gpt-5.5-pro`).
   
   Changes:
   - `seatunnel-cli/seatunnel_cli/llm_provider.py` — `OrcaRouterProvider`, 
registered in `_PROVIDERS`, `_auto_detect_provider`, and the config-file 
model-override path.
   - `seatunnel-cli/seatunnel_cli/cli.py` — `orcarouter` added to `--provider` 
choices, the `--init` wizard, `/config`, and `/status`.
   - `seatunnel-cli/tests/test_llm_provider_orcarouter.py` (new) + 
`test_cli_provider_routing.py` — unit tests covering the provider, CLI routing, 
and config-file overrides.
   - Docs: `seatunnel-cli/README.md` / `README.zh-CN.md`, `env.example.sh`, 
`setup.sh`, `docs/en/ai-cli/*` and `docs/zh/ai-cli/*`.
   
   Verification:
   - `python3 -m pytest tests/` — 82 passed (was 76 before this PR).
   - L3 live test against the real endpoint (`AI_PROVIDER=orcarouter`): 
streaming chat, non-streaming chat, and the CLI's tool-calling loop (connector 
lookup) all returned 200/valid responses; a full single-shot generation 
produced a valid MySQL→S3 Parquet config through the multi-agent pipeline.
   
   Discord: discord.gg/YEubt8enRA · X: https://x.com/OrcaRouter
   
   I'm an engineer on the OrcaRouter team.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to