refactor(meet-kevin): switch LLM analyzer to OpenRouter via OpenAI SDK
User's Vault has openrouter_api_key but no direct sk-ant-* Anthropic key. OpenRouter passes through Claude Sonnet 4.6 (~3% markup over Anthropic list pricing) and matches the existing gpt_mini_endpoint pattern used by recruiter-responder. - Replace anthropic.AsyncAnthropic with openai.AsyncOpenAI + base_url - Convert Anthropic tool-use API to OpenAI function-calling - System prompt unchanged (analyst instructions are model-agnostic) - Drop cache_control (not in OpenAI API); revisit later if cost matters - Model slug: anthropic/claude-sonnet-4.5 (OpenRouter's current Claude tier) - Pricing: $3.10/M input, $15.50/M output (OpenRouter pass-through) - Config field anthropic_api_key -> openrouter_api_key - pyproject extras: anthropic>=0.40 -> openai>=1.50 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
parent
3c20c8c12c
commit
89f01ad9c0
5 changed files with 244 additions and 216 deletions
|
|
@ -18,12 +18,12 @@ class MeetKevinWatcherConfig(BaseConfig):
|
|||
|
||||
# LLM analysis settings
|
||||
meet_kevin_max_llm_retries: int = 3
|
||||
meet_kevin_llm_model: str = "claude-sonnet-4-6"
|
||||
meet_kevin_llm_model: str = "anthropic/claude-sonnet-4.5"
|
||||
meet_kevin_prompt_version: str = "v1"
|
||||
meet_kevin_daily_cost_cap_usd: float = 5.0
|
||||
|
||||
# API credentials
|
||||
anthropic_api_key: str = ""
|
||||
openrouter_api_key: str = ""
|
||||
|
||||
# Runtime settings
|
||||
meet_kevin_workdir: str = "/tmp/meet_kevin_captions"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue