mirror of https://github.com/aliasrobotics/cai.git
36 lines
1.1 KiB
Python
36 lines
1.1 KiB
Python
import os
|
|
from dotenv import load_dotenv
|
|
from openai import AsyncOpenAI
|
|
from cai.agents import OpenAIChatCompletionsModel,Agent,Runner
|
|
from cai.agents.model_settings import ModelSettings
|
|
from cai.agents import set_default_openai_client, set_tracing_disabled
|
|
|
|
# Load environment variables from .env file
|
|
load_dotenv()
|
|
|
|
external_client = AsyncOpenAI(
|
|
base_url = os.getenv('LITELLM_BASE_URL', 'http://localhost:4000'),
|
|
api_key=os.getenv('LITELLM_API_KEY', 'key'))
|
|
|
|
set_default_openai_client(external_client)
|
|
set_tracing_disabled(True)
|
|
|
|
llm_model=os.getenv('LLM_MODEL', 'gpt-4o')
|
|
# llm_model=os.getenv('LLM_MODEL', 'claude-3-7')
|
|
# llm_model=os.getenv('LLM_MODEL', 'qwen2.5:14b')
|
|
|
|
# For Qwen models, we need to skip system instructions as they're not supported
|
|
instructions = None if "qwen" in llm_model.lower() else "You are a helpful assistant"
|
|
|
|
agent = Agent(
|
|
name="Assistant",
|
|
instructions=instructions,
|
|
model=OpenAIChatCompletionsModel(
|
|
model=llm_model,
|
|
openai_client=external_client,
|
|
)
|
|
)
|
|
|
|
|
|
result = Runner.run_sync(agent, "Write a haiku about recursion in programming.")
|
|
print(result.final_output) |