39 lines
1.0 KiB
Python
39 lines
1.0 KiB
Python
from aisuite import Agent
|
|
|
|
|
|
def test_agent_stores_definition_fields():
|
|
def tool(city: str) -> str:
|
|
"""Lookup city."""
|
|
return city
|
|
|
|
agent = Agent(
|
|
name="weather",
|
|
model="openai:gpt-4o",
|
|
instructions="Answer briefly.",
|
|
tools=[tool],
|
|
model_settings={"temperature": 0.2},
|
|
tags=["prod"],
|
|
metadata={"team": "growth"},
|
|
)
|
|
|
|
assert agent.name == "weather"
|
|
assert agent.model == "openai:gpt-4o"
|
|
assert agent.instructions == "Answer briefly."
|
|
assert agent.tools == [tool]
|
|
assert agent.model_settings == {"temperature": 0.2}
|
|
assert agent.tags == ["prod"]
|
|
assert agent.metadata == {"team": "growth"}
|
|
|
|
|
|
def test_agent_mutable_defaults_are_independent():
|
|
first = Agent(name="first", model="openai:gpt-4o")
|
|
second = Agent(name="second", model="openai:gpt-4o")
|
|
|
|
first.tools.append(lambda value: value)
|
|
first.tags.append("one")
|
|
first.metadata["team"] = "one"
|
|
|
|
assert second.tools == []
|
|
assert second.tags == []
|
|
assert second.metadata == {}
|