Skip to content

Add OpenAI-compatible endpoint support#1

Open
Simsalaba wants to merge 1 commit into
mainfrom
feature/openai-compatible-client
Open

Add OpenAI-compatible endpoint support#1
Simsalaba wants to merge 1 commit into
mainfrom
feature/openai-compatible-client

Conversation

@Simsalaba

Copy link
Copy Markdown
Owner

Summary

  • Adds OpenAICompatibleClient as a drop-in alternative to OllamaClient
  • Auto-detects endpoint type at startup — Ollama vs OpenAI-compatible, no config needed
  • Adds --api-key flag to wiki ingest chatgpt and wiki check
  • API key also picked up from LLM_WIKI_API_KEY or OPENAI_API_KEY env vars
  • Existing Ollama path completely unchanged

Usage

# Any OpenAI-compatible provider as a parallel summarization worker
wiki ingest chatgpt --triage-mode none \
  --extra-url https://api.together.xyz/v1 \
  --api-key sk-...

# Mix Ollama + cloud in the same run
wiki ingest chatgpt \
  --extra-url http://192.168.1.x:11434 \
  --extra-url https://api.fireworks.ai/inference/v1 \
  --api-key fw-...

Compatible providers

Tested API shape: Together AI, Fireworks, Cerebras, LM Studio, llama.cpp server.
Any provider implementing /v1/chat/completions + /v1/models should work.

Test plan

  • wiki check with an OpenAI-compatible URL shows correct endpoint type
  • wiki check with unreachable URL fails fast (5s timeout)
  • wiki ingest chatgpt --extra-url <openai-url> --api-key sk-... uses both workers
  • Existing Ollama-only run unaffected

🤖 Generated with Claude Code

Adds OpenAICompatibleClient as a drop-in alternative to OllamaClient.
Works with any provider implementing the OpenAI /v1/chat/completions API
(Together AI, Fireworks, Cerebras, LM Studio, llama.cpp server, etc.)

- Auto-detects endpoint type: probes /api/tags for Ollama, falls back to OpenAI-compatible
- Same interface as OllamaClient — zero pipeline changes required
- warmup() is a no-op for cloud APIs (no model preloading needed)
- API key via --api-key flag or LLM_WIKI_API_KEY / OPENAI_API_KEY env vars
- --api-key added to both `wiki check` and `wiki ingest chatgpt`
- Endpoint type shown in startup output (Ollama vs OpenAI-compatible)

Usage:
  wiki ingest chatgpt --triage-mode none \
    --extra-url https://api.together.xyz/v1 \
    --api-key sk-...

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.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