feat: Claude Opus via cliproxy 프록시 설정 + base_url 지원
- ClaudeWriter에 base_url 파라미터 추가 (프록시 지원) - engine.json: provider=claude, cliproxy.gru.farm 프록시 설정 - fallback_chain: claude → gemini → groq 순서 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -66,13 +66,14 @@ BaseVideoGenerator = object
|
||||
# ─── Writer 구현체 ──────────────────────────────────────
|
||||
|
||||
class ClaudeWriter(BaseWriter):
|
||||
"""Anthropic Claude API를 사용하는 글쓰기 엔진"""
|
||||
"""Anthropic Claude API를 사용하는 글쓰기 엔진 (프록시 base_url 지원)"""
|
||||
|
||||
def __init__(self, cfg: dict):
|
||||
self.api_key = os.getenv(cfg.get('api_key_env', 'ANTHROPIC_API_KEY'), '')
|
||||
self.model = cfg.get('model', 'claude-opus-4-5')
|
||||
self.model = cfg.get('model', 'claude-sonnet-4-6')
|
||||
self.max_tokens = cfg.get('max_tokens', 4096)
|
||||
self.temperature = cfg.get('temperature', 0.7)
|
||||
self.base_url = cfg.get('base_url', '') # 프록시 URL (옵션)
|
||||
|
||||
def write(self, prompt: str, system: str = '') -> str:
|
||||
if not self.api_key:
|
||||
@@ -80,7 +81,10 @@ class ClaudeWriter(BaseWriter):
|
||||
return ''
|
||||
try:
|
||||
import anthropic
|
||||
client = anthropic.Anthropic(api_key=self.api_key)
|
||||
client_kwargs = {'api_key': self.api_key}
|
||||
if self.base_url:
|
||||
client_kwargs['base_url'] = self.base_url
|
||||
client = anthropic.Anthropic(**client_kwargs)
|
||||
kwargs: dict = {
|
||||
'model': self.model,
|
||||
'max_tokens': self.max_tokens,
|
||||
|
||||
Reference in New Issue
Block a user