hhh-test / providers /openai_client.py
github-actions[bot]
Deploy from GitHub Actions (commit: eb2cb1538d89b3093b6b424824dd9aecfc99086b)
cff1e0e
from openai import OpenAI
from services.key_manager import get_key_manager
class OpenAIClient:
def __init__(self, api_key: str = None):
# Get API key from KeyManager if not provided
if api_key is None:
key_manager = get_key_manager()
api_key = key_manager.get_key("openai")
if api_key is None:
raise ValueError("OpenAI API key not found. Please configure it in KeyManager or pass it as parameter.")
self.client = OpenAI(api_key=api_key)
def chat_completions(self, prompt: str, model: str = "gpt-4o", temperature: float = 0.3, max_tokens: int = 1000):
response = self.client.chat.completions.create(
model=model,
messages=[{"role": "user", "content": prompt}],
temperature=temperature,
max_tokens=max_tokens,
)
# Add output_text attribute for compatibility
response.output_text = response.choices[0].message.content if response.choices else ""
return response