인터페이스는 현지화되어 있으며, Skill 소개와 설명 문서는 선택한 언어로 AI가 자동 번역합니다. 코드·명령어·경로·전문 용어는 원문을 유지하며 원작자 문서가 우선합니다.
Skills 둘러보기
생산성 및 협업 · SKILL.md

remote-providers

remote-providers

Operate Outlines server and black-box provider integrations without invoking live models.

Independent GitHub snapshot · Automated classification · Original documentation governs

Skill 문서

GitHub

name: remote-providers description: "Operate Outlines server and black-box provider integrations without invoking live models." disable-model-invocation: true metadata: disco-role: operating license: Apache 2.0

remote-providers

Use this sub-skill when the task involves Outlines model loaders for server-based or black-box clients: OpenAI/Azure OpenAI, Anthropic, Gemini, Mistral, Ollama, LM Studio, SGLang, TGI, vLLM server mode, or Dottxt.

This skill is for configuration, routing, capability checks, and error recovery. Do not call provider services, do not validate real credentials, and do not print secret values.

Read First

  • Provider matrix for loader signatures, supported modes, output types, credentials/endpoints, and exclusions.
  • API reference for safe loader patterns, output-type compatibility, and normalized exceptions.
  • Workflows for provider selection, async/stream routing, no-network prerequisite checks, and retry/backoff decisions.
  • Troubleshooting for install/import, auth, rate limits, unsupported structured outputs, endpoint mismatches, refusals, and mock-vs-live verification.
  • scripts/check_provider_prereqs.py for a read-only import/env/endpoint probe that never calls a model service.

Use This When

  • Choosing the correct from_* loader for a provider client object.
  • Deciding whether a task can use sync, async, streaming, or batch calls.
  • Checking whether an output_type can run on a black-box provider.
  • Diagnosing provider SDK import errors, missing API-key variables, endpoint configuration, or normalized outlines.exceptions errors.
  • Handling OpenAI-compatible servers while preserving SGLang/TGI/vLLM-specific structured-output behavior.

Route Elsewhere

  • Output-type design, schema shaping, regex/CFG conversion, or local constrained decoding strategy -> ../structured-generation/SKILL.md.
  • Prompt, chat, multimodal input construction, reusable generators, or call orchestration -> ../prompt-workflows/SKILL.md.
  • Local/offline engines (Transformers, LlamaCpp, MLXLM, VLLMOffline) -> the local model/runtime route, not this server-provider route.

Operating Rules

  1. Select the loader from the actual client class. from_openai, from_sglang, and from_vllm all accept OpenAI SDK clients, but they build different request bodies for structured output. Do not treat them as interchangeable.
  2. Reject unsupported output types before retrying. For example, an OpenAI Regex or CFG request is a capability mismatch; route to a local/supported provider instead of retrying the same OpenAI request.
  3. Batch is unavailable for all providers in this skill. Server wrappers here raise NotImplementedError for batch; use caller-side bounded concurrency only when the provider wrapper has an async model and the provider limits permit it.
  4. Retry only normalized transient errors. RateLimitError, ServerError, APITimeoutError, and APIConnectionError expose retryable=True. Authentication, permission, not-found, malformed request/schema, and refusal errors require configuration or request changes.
  5. Preserve request IDs and providers. When catching APIError, surface provider, status_code, request_id, retryable, and hint without exposing secrets.
  6. No credentials or live probes. Use placeholders in examples and the bundled prerequisite script for import/env checks only.

Fast Capability Snapshot

Provider routeLoaderAsyncStreamBatchStructured-output support
OpenAI / Azurefrom_openai(client, model_name=None)yesyesnoJSON schema strict + JSON mode; no Regex/CFG/simple choice
Anthropicfrom_anthropic(client, model_name=None)noyesnonone through Outlines output_type
Geminifrom_gemini(client, model_name=None)noyesnoJSON schema subset, homogeneous lists, enum/choice; no Regex/CFG
Mistralfrom_mistral(client, model_name=None, async_client=False)opt-inyesnostrict JSON schema + JSON mode; no Regex/CFG
Ollamafrom_ollama(client, model_name=None)yesyesnoJSON schema only; no Regex/CFG
LM Studiofrom_lmstudio(client, model_name=None)yesyesnoJSON schema only; local SDK errors are not normalized
SGLangfrom_sglang(client, model_name=None)yesyesnoJSON/schema/regex/simple/choice; CFG only as SGLang-compatible EBNF
TGIfrom_tgi(client)yesyesnoJSON/schema/regex/simple/choice; no CFG
vLLM serverfrom_vllm(client, model_name=None)yesyesnoJSON/schema/regex/simple/choice/CFG if server supports structured outputs
Dottxtfrom_dottxt(client, model=None)yesnonoJSON schema only; output type and model id required

Keep provider-specific caveats in provider-matrix.md in front of any implementation or recovery plan.

저장한 Skills