mirror of
https://github.com/agno-agi/agno.git
synced 2026-10-12 02:10:54 +00:00
cookbook: update GPT-4o models to GPT-5.6 Luna (#8939)
## Summary - Replace exact `gpt-4o`, `gpt-4o-mini`, and existing `gpt-5.4-mini` model IDs with `gpt-5.6-luna` throughout `cookbook/`. - Update matching README, test-log, comment, and example references. - Update the root `CLAUDE.md` cookbook guidance from `gpt-5.5` to `gpt-5.6-luna`. - Preserve distinct specialized models such as `gpt-4o-transcribe`, `gpt-4o-search-preview`, and dated snapshots. - Add no new tests. ## Type of change - [ ] Bug fix - [ ] New feature - [ ] Breaking change - [ ] Improvement - [x] Model update - [ ] Other: --- ## Checklist - [x] Code complies with style guidelines - [x] Ran format/validation scripts (`./scripts/format.sh` and `./scripts/validate.sh`) - [x] Self-review completed - [x] Documentation updated (comments, docstrings) - [x] Examples and guides: Relevant cookbook examples have been included or updated (if applicable) - [x] Tested with a live model response - [ ] Tests added/updated (not requested) ### Duplicate and AI-Generated PR Check - [x] I have searched existing [open pull requests](../../pulls) and confirmed that no other PR already addresses this issue - [ ] If a similar PR exists, I have explained below why this PR is a better approach - [x] Check if this PR was entirely AI-generated (by Copilot, Claude Code, Cursor, etc.) --- ## Additional Notes This updates 860 model references across 447 cookbook files, plus the root `CLAUDE.md` model instruction. Validation performed: - Official OpenAI model catalog: `gpt-5.6-luna` is listed as the GPT-5.6 model for cost-sensitive workloads - Live Responses API smoke run: `gpt-5.6-luna` returned `OK` successfully on the first and only request - `./scripts/format.sh`: passed - Cookbook Ruff check: passed - Cookbook pattern check: passed - `git diff --check`: passed - Raw `5.4 mini` scan under `cookbook/`: zero remaining matches - `./scripts/validate.sh`: cookbook and agnoctl checks passed; the unchanged core Agno mypy check reports 43 environment/dependency type errors in 10 files outside this PR's scope This PR was generated with Codex in an isolated `nst` workspace. --------- Co-authored-by: Sannya Singal <[email protected]>
This commit is contained in:
@@ -241,7 +241,7 @@ gh api repos/agno-agi/agno/pulls/<PR_NUMBER> -X PATCH -f body="$(cat /path/to/bo
|
||||
- Don't push code without running `./scripts/format.sh` and `./scripts/validate.sh`
|
||||
- Don't submit a PR without a detailed PR description. Always follow the PR template provided in `.github/pull_request_template.md`.
|
||||
- Don't use `OpenAIChat` in cookbooks or examples — use `OpenAIResponses` instead
|
||||
- Don't use `gpt-4o` or `gpt-4o-mini` in cookbooks or examples — use `gpt-5.5` instead
|
||||
- Don't use `gpt-4o` or `gpt-4o-mini` in cookbooks or examples — use `gpt-5.6-luna` instead
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -28,13 +28,13 @@ from agno.models.openai import OpenAIResponses
|
||||
# Create the Agent — just set followups=True
|
||||
# ---------------------------------------------------------------------------
|
||||
agent = Agent(
|
||||
model=OpenAIResponses(id="gpt-4o"),
|
||||
model=OpenAIResponses(id="gpt-5.6-luna"),
|
||||
instructions="You are a knowledgeable assistant. Answer questions thoroughly.",
|
||||
# Enable built-in followups
|
||||
followups=True,
|
||||
num_followups=3,
|
||||
# Optionally use a cheaper model for followups
|
||||
# followup_model=OpenAIResponses(id="gpt-4o-mini"),
|
||||
# followup_model=OpenAIResponses(id="gpt-5.6-luna"),
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ db = SqliteDb(db_file="tmp/agents.db")
|
||||
# Create the Agent
|
||||
# ---------------------------------------------------------------------------
|
||||
agent = Agent(
|
||||
model=OpenAIResponses(id="gpt-4o"),
|
||||
model=OpenAIResponses(id="gpt-5.6-luna"),
|
||||
instructions="You are a knowledgeable assistant. Answer questions thoroughly.",
|
||||
session_id="test-session",
|
||||
followups=True,
|
||||
|
||||
@@ -59,7 +59,7 @@ def standalone_tool(
|
||||
def main():
|
||||
# Create an agent with both toolkit and standalone tool
|
||||
agent = Agent(
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[FileOperationsToolkit(), standalone_tool],
|
||||
instructions="You are a helpful assistant that can manage files and services.",
|
||||
markdown=True,
|
||||
|
||||
@@ -34,7 +34,7 @@ db = AsyncSqliteDb(db_file=DB_FILE)
|
||||
# Create Agent
|
||||
# ---------------------------------------------------------------------------
|
||||
agent = Agent(
|
||||
model=OpenAIResponses(id="gpt-4o"),
|
||||
model=OpenAIResponses(id="gpt-5.6-luna"),
|
||||
db=db,
|
||||
search_past_sessions=True,
|
||||
num_past_sessions_to_search=10,
|
||||
|
||||
@@ -31,7 +31,7 @@ def main():
|
||||
|
||||
agent = Agent(
|
||||
name="Privacy-Protected Agent",
|
||||
model=OpenAIResponses(id="gpt-4o-mini"),
|
||||
model=OpenAIResponses(id="gpt-5.6-luna"),
|
||||
pre_hooks=[log_request, PIIDetectionGuardrail()],
|
||||
instructions="You are a helpful assistant that protects user privacy.",
|
||||
)
|
||||
|
||||
@@ -37,7 +37,7 @@ def get_weather(city: str) -> str:
|
||||
|
||||
|
||||
agent = Agent(
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[get_weather],
|
||||
instructions=["Use the tools to help the user."],
|
||||
)
|
||||
|
||||
@@ -43,7 +43,7 @@ def add_to_watchlist(run_context: RunContext, symbol: str) -> str:
|
||||
# Create Agent
|
||||
# ---------------------------------------------------------------------------
|
||||
agent = Agent(
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[add_to_watchlist],
|
||||
session_state={"watchlist": []},
|
||||
instructions="You MUST use the add_to_watchlist tool when the user asks to add a stock. The user's watchlist is: {watchlist}",
|
||||
|
||||
@@ -19,7 +19,7 @@ cwd = Path(__file__).parent.resolve()
|
||||
# ---------------------------------------------------------------------------
|
||||
# Create Agent
|
||||
# ---------------------------------------------------------------------------
|
||||
image_agent = Agent(model=OpenAIChat(id="gpt-4o"))
|
||||
image_agent = Agent(model=OpenAIChat(id="gpt-5.6-luna"))
|
||||
|
||||
image_path = Path(__file__).parent.joinpath("sample.jpg")
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ openai_tools = OpenAITools()
|
||||
video_caption_agent = Agent(
|
||||
name="Video Caption Generator Agent",
|
||||
model=OpenAIResponses(
|
||||
id="gpt-4o",
|
||||
id="gpt-5.6-luna",
|
||||
),
|
||||
tools=[video_tools, openai_tools],
|
||||
description="You are an AI agent that can generate and embed captions for videos.",
|
||||
|
||||
@@ -32,7 +32,7 @@ db = PostgresDb(
|
||||
# ---------------------------------------------------------------------------
|
||||
agent = Agent(
|
||||
name="BackgroundMetricsAgent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[YFinanceTools(enable_stock_price=True)],
|
||||
db=db,
|
||||
)
|
||||
|
||||
@@ -13,7 +13,7 @@ from agno.models.openai import OpenAIResponses
|
||||
# ---------------------------------------------------------------------------
|
||||
# Create Agent
|
||||
# ---------------------------------------------------------------------------
|
||||
agent = Agent(model=OpenAIResponses(id="gpt-4o", cache_response=True))
|
||||
agent = Agent(model=OpenAIResponses(id="gpt-5.6-luna", cache_response=True))
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Run Agent
|
||||
|
||||
@@ -29,7 +29,7 @@ def main() -> None:
|
||||
db = PostgresDb(db_url)
|
||||
|
||||
agent = Agent(
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
db=db,
|
||||
add_history_to_context=True,
|
||||
num_history_runs=10,
|
||||
@@ -53,7 +53,7 @@ def main() -> None:
|
||||
agent.print_response("What is the weather in New York?")
|
||||
|
||||
# Turn 5 — Back to OpenAI Chat to summarize all history
|
||||
agent.model = OpenAIChat(id="gpt-4o")
|
||||
agent.model = OpenAIChat(id="gpt-5.6-luna")
|
||||
agent.print_response("Summarize all the weather we checked.")
|
||||
|
||||
# Turn 6 — Claude summarizes (sees history from all providers)
|
||||
|
||||
@@ -18,7 +18,7 @@ def main() -> None:
|
||||
db = PostgresDb(db_url)
|
||||
|
||||
agent = Agent(
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
db=db,
|
||||
add_history_to_context=True,
|
||||
num_history_runs=10,
|
||||
@@ -33,7 +33,7 @@ def main() -> None:
|
||||
agent.print_response("What is the weather in London?")
|
||||
|
||||
# Turn 3 — OpenAI with tool call (works fine on its own)
|
||||
agent.model = OpenAIChat(id="gpt-4o")
|
||||
agent.model = OpenAIChat(id="gpt-5.6-luna")
|
||||
agent.print_response("What is the weather in Tokyo?")
|
||||
|
||||
# Turn 4 — OpenAI Responses summary
|
||||
|
||||
@@ -19,7 +19,7 @@ def main() -> None:
|
||||
db = PostgresDb(db_url)
|
||||
|
||||
agent = Agent(
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
db=db,
|
||||
add_history_to_context=True,
|
||||
num_history_runs=10,
|
||||
@@ -34,7 +34,7 @@ def main() -> None:
|
||||
agent.print_response("What is the weather in London?")
|
||||
|
||||
# Turn 3 — OpenAI with tool call (works fine on its own)
|
||||
agent.model = OpenAIChat(id="gpt-4o")
|
||||
agent.model = OpenAIChat(id="gpt-5.6-luna")
|
||||
agent.print_response("What is the weather in Tokyo?")
|
||||
|
||||
# Turn 4 — Claude summary
|
||||
|
||||
@@ -19,7 +19,7 @@ def main() -> None:
|
||||
db = PostgresDb(db_url)
|
||||
|
||||
agent = Agent(
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
db=db,
|
||||
add_history_to_context=True,
|
||||
num_history_runs=10,
|
||||
@@ -34,7 +34,7 @@ def main() -> None:
|
||||
agent.print_response("What is the weather in London?")
|
||||
|
||||
# Turn 3 — OpenAI with tool call (works fine on its own)
|
||||
agent.model = OpenAIChat(id="gpt-4o")
|
||||
agent.model = OpenAIChat(id="gpt-5.6-luna")
|
||||
agent.print_response("What is the weather in Tokyo?")
|
||||
|
||||
# Turn 4 — Gemini summary
|
||||
|
||||
@@ -20,8 +20,8 @@ from rich.pretty import pprint
|
||||
db = PostgresDb(db_url="postgresql+psycopg://ai:ai@localhost:5532/ai")
|
||||
|
||||
agent = Agent(
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
memory_manager=MemoryManager(model=OpenAIChat(id="gpt-4o-mini"), db=db),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
memory_manager=MemoryManager(model=OpenAIChat(id="gpt-5.6-luna"), db=db),
|
||||
update_memory_on_run=True,
|
||||
db=db,
|
||||
)
|
||||
|
||||
@@ -17,7 +17,7 @@ db = PostgresDb(db_url=db_url, session_table="agent_metrics_sessions")
|
||||
# Create Agent
|
||||
# ---------------------------------------------------------------------------
|
||||
agent = Agent(
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
db=db,
|
||||
session_id="session_metrics_demo",
|
||||
add_history_to_context=True,
|
||||
|
||||
@@ -26,7 +26,7 @@ db = PostgresDb(db_url="postgresql+psycopg://ai:ai@localhost:5532/ai")
|
||||
agent = Agent(
|
||||
model=OpenAIChat(id="gpt-5.1"),
|
||||
session_summary_manager=SessionSummaryManager(
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
),
|
||||
enable_session_summaries=True,
|
||||
db=db,
|
||||
|
||||
@@ -15,7 +15,7 @@ from rich.pretty import pprint
|
||||
# Create Agent
|
||||
# ---------------------------------------------------------------------------
|
||||
agent = Agent(
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
)
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
@@ -15,7 +15,7 @@ from rich.pretty import pprint
|
||||
# Create Agent
|
||||
# ---------------------------------------------------------------------------
|
||||
agent = Agent(
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[YFinanceTools()],
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
@@ -16,7 +16,7 @@ from agno.models.openai import OpenAIChat
|
||||
# with a connection error, then the fallback (Claude) handles the request.
|
||||
# ---------------------------------------------------------------------------
|
||||
agent = Agent(
|
||||
model=OpenAIChat(id="gpt-4o", base_url="http://localhost:1/v1", retries=0),
|
||||
model=OpenAIChat(id="gpt-5.6-luna", base_url="http://localhost:1/v1", retries=0),
|
||||
fallback_models=[Claude(id="claude-sonnet-4-20250514")],
|
||||
)
|
||||
|
||||
|
||||
@@ -21,11 +21,11 @@ from agno.models.openai import OpenAIChat
|
||||
# Create Agent with error-specific fallbacks
|
||||
# ---------------------------------------------------------------------------
|
||||
agent = Agent(
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
fallback_config=FallbackConfig(
|
||||
# On rate-limit errors, try these models (in order)
|
||||
on_rate_limit=[
|
||||
OpenAIChat(id="gpt-4o-mini"),
|
||||
OpenAIChat(id="gpt-5.6-luna"),
|
||||
Claude(id="claude-sonnet-4-20250514"),
|
||||
],
|
||||
# On context-window-exceeded errors, try a model with a larger window
|
||||
|
||||
@@ -5,7 +5,7 @@ Fallback Models — Mid-Run Failure
|
||||
Tests what happens when the primary model fails AFTER a tool call (and or within a run).
|
||||
|
||||
Flow:
|
||||
1. gpt-4o receives the request and makes a tool call
|
||||
1. gpt-5.6-luna receives the request and makes a tool call
|
||||
2. The tool mutates the model instance's id to something invalid
|
||||
3. The next API call inside Model.response()'s while-loop fails
|
||||
4. The error bubbles up to call_model_with_fallback
|
||||
@@ -27,7 +27,7 @@ def break_model(agent: Agent) -> str:
|
||||
|
||||
|
||||
agent = Agent(
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[break_model],
|
||||
fallback_models=[Claude(id="claude-sonnet-4-20250514")],
|
||||
)
|
||||
|
||||
@@ -29,7 +29,7 @@ def on_fallback(
|
||||
# Create Agent with callback
|
||||
# ---------------------------------------------------------------------------
|
||||
agent = Agent(
|
||||
model=OpenAIChat(id="gpt-4o", base_url="http://localhost:1/v1", retries=0),
|
||||
model=OpenAIChat(id="gpt-5.6-luna", base_url="http://localhost:1/v1", retries=0),
|
||||
fallback_config=FallbackConfig(
|
||||
on_error=[Claude(id="claude-sonnet-4-20250514")],
|
||||
callback=on_fallback,
|
||||
|
||||
@@ -75,14 +75,14 @@ def main():
|
||||
researcher = Agent(
|
||||
name="Researcher",
|
||||
role="Research specialist",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You research topics and provide information.",
|
||||
)
|
||||
|
||||
writer = Agent(
|
||||
name="Writer",
|
||||
role="Content writer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You write content based on research.",
|
||||
)
|
||||
|
||||
@@ -90,7 +90,7 @@ def main():
|
||||
team = Team(
|
||||
name="Content Team",
|
||||
mode=TeamMode.tasks,
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
members=[researcher, writer],
|
||||
instructions=[
|
||||
"You are a content creation team leader.",
|
||||
|
||||
@@ -47,7 +47,7 @@ def get_weather(city: str) -> str:
|
||||
weather_agent = Agent(
|
||||
name="Weather Agent",
|
||||
role="Get weather information for cities",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[get_weather],
|
||||
tool_hooks=[context_aware_hook],
|
||||
instructions=["Use the tools to help the user."],
|
||||
@@ -58,7 +58,7 @@ weather_agent = Agent(
|
||||
# ---------------------------------------------------------------------------
|
||||
team = Team(
|
||||
name="Travel Team",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
members=[weather_agent],
|
||||
mode="coordinate",
|
||||
)
|
||||
|
||||
@@ -35,7 +35,7 @@ db = AsyncSqliteDb(db_file=DB_FILE)
|
||||
# Create Team
|
||||
# ---------------------------------------------------------------------------
|
||||
team = Team(
|
||||
model=OpenAIResponses(id="gpt-4o"),
|
||||
model=OpenAIResponses(id="gpt-5.6-luna"),
|
||||
members=[],
|
||||
db=db,
|
||||
search_past_sessions=True,
|
||||
|
||||
@@ -61,15 +61,15 @@ DEBUG You coordinate a team of specialized AI agents t
|
||||
|
||||
**Result:** INFO Setting default model to OpenAI Chat
|
||||
DEBUG ****** Team ID: afed51f9-7928-4a60-848a-11b071aa87e5 *******
|
||||
INFO Agent 'Sarah' inheriting model from Team: gpt-4o
|
||||
INFO Agent 'Mike' inheriting model from Team: gpt-4o
|
||||
INFO Agent 'Sarah' inheriting model from Team: gpt-5.6-luna
|
||||
INFO Agent 'Mike' inheriting model from Team: gpt-5.6-luna
|
||||
DEBUG ***** Session ID: 373b904d-3f70-4b17-aaac-c4be5b4be980 *****
|
||||
DEBUG Creating new TeamSession: 373b904d-3f70-4b17-aaac-c4be5b4be980
|
||||
DEBUG *** Team Run Start: fbd7af19-51e4-44aa-bc67-17a2a81c83b6 ***
|
||||
DEBUG Processing tools for model
|
||||
DEBUG Added tool delegate_task_to_member
|
||||
DEBUG --------------- OpenAI Response Stream Start ---------------
|
||||
DEBUG ---------------------- Model: gpt-4o -----------------------
|
||||
DEBUG ---------------------- Model: gpt-5.6-luna -----------------------
|
||||
DEBUG ========================== system ==========================
|
||||
DEBUG You coordinate a team of specialized AI agents to fulfill the user's
|
||||
request. Delegate to members when their expertise or tools are needed. For
|
||||
|
||||
@@ -33,14 +33,14 @@ db = PostgresDb(
|
||||
# ---------------------------------------------------------------------------
|
||||
stock_searcher = Agent(
|
||||
name="Stock Searcher",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
role="Searches for stock information.",
|
||||
tools=[YFinanceTools(enable_stock_price=True)],
|
||||
)
|
||||
|
||||
team = Team(
|
||||
name="Stock Research Team",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
members=[stock_searcher],
|
||||
db=db,
|
||||
show_members_responses=True,
|
||||
|
||||
@@ -14,18 +14,18 @@ from agno.team import Team
|
||||
researcher = Agent(
|
||||
name="Researcher",
|
||||
role="You research topics and provide detailed findings.",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
)
|
||||
|
||||
writer = Agent(
|
||||
name="Writer",
|
||||
role="You write clear, concise summaries from research findings.",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
)
|
||||
|
||||
team = Team(
|
||||
name="Research Team",
|
||||
model=OpenAIChat(id="gpt-4o", base_url="http://localhost:1/v1", retries=0),
|
||||
model=OpenAIChat(id="gpt-5.6-luna", base_url="http://localhost:1/v1", retries=0),
|
||||
fallback_models=[Claude(id="claude-sonnet-4-20250514")],
|
||||
members=[researcher, writer],
|
||||
instructions=[
|
||||
|
||||
@@ -18,21 +18,21 @@ from agno.team import Team
|
||||
researcher = Agent(
|
||||
name="Researcher",
|
||||
role="You research topics and provide detailed findings.",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
)
|
||||
|
||||
writer = Agent(
|
||||
name="Writer",
|
||||
role="You write clear, concise summaries from research findings.",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
)
|
||||
|
||||
team = Team(
|
||||
name="Research Team",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
fallback_config=FallbackConfig(
|
||||
on_rate_limit=[
|
||||
OpenAIChat(id="gpt-4o-mini"),
|
||||
OpenAIChat(id="gpt-5.6-luna"),
|
||||
Claude(id="claude-sonnet-4-20250514"),
|
||||
],
|
||||
on_context_overflow=[
|
||||
|
||||
@@ -17,7 +17,7 @@ from rich.pretty import pprint
|
||||
# ---------------------------------------------------------------------------
|
||||
assistant = Agent(
|
||||
name="Assistant",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
role="Helpful assistant that answers questions.",
|
||||
)
|
||||
|
||||
@@ -26,7 +26,7 @@ assistant = Agent(
|
||||
# ---------------------------------------------------------------------------
|
||||
team = Team(
|
||||
name="Streaming Team",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
members=[assistant],
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
@@ -25,7 +25,7 @@ db = PostgresDb(db_url=db_url, session_table="team_metrics_sessions")
|
||||
# ---------------------------------------------------------------------------
|
||||
assistant = Agent(
|
||||
name="Assistant",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
role="Helpful assistant that answers questions.",
|
||||
)
|
||||
|
||||
@@ -34,7 +34,7 @@ assistant = Agent(
|
||||
# ---------------------------------------------------------------------------
|
||||
team = Team(
|
||||
name="Research Team",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
members=[assistant],
|
||||
db=db,
|
||||
session_id="team_session_metrics_demo",
|
||||
|
||||
@@ -17,7 +17,7 @@ from rich.pretty import pprint
|
||||
# ---------------------------------------------------------------------------
|
||||
stock_searcher = Agent(
|
||||
name="Stock Searcher",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
role="Searches for stock information.",
|
||||
tools=[YFinanceTools()],
|
||||
)
|
||||
@@ -27,7 +27,7 @@ stock_searcher = Agent(
|
||||
# ---------------------------------------------------------------------------
|
||||
team = Team(
|
||||
name="Stock Research Team",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
members=[stock_searcher],
|
||||
markdown=True,
|
||||
show_members_responses=True,
|
||||
|
||||
@@ -21,7 +21,7 @@ from rich.pretty import pprint
|
||||
# ---------------------------------------------------------------------------
|
||||
eval_hook = AgentAsJudgeEval(
|
||||
name="Quality Check",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
criteria="Response should be accurate, well-structured, and concise",
|
||||
scoring_strategy="binary",
|
||||
)
|
||||
@@ -31,13 +31,13 @@ eval_hook = AgentAsJudgeEval(
|
||||
# ---------------------------------------------------------------------------
|
||||
researcher = Agent(
|
||||
name="Researcher",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
role="Research topics and provide factual information.",
|
||||
)
|
||||
|
||||
team = Team(
|
||||
name="Research Team",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
members=[researcher],
|
||||
post_hooks=[eval_hook],
|
||||
show_members_responses=True,
|
||||
|
||||
@@ -28,7 +28,7 @@ async def main():
|
||||
# 1. Create a local agent
|
||||
summarizer = Agent(
|
||||
name="Summarizer",
|
||||
model=OpenAIResponses(id="gpt-4o-mini"),
|
||||
model=OpenAIResponses(id="gpt-5.6-luna"),
|
||||
instructions="You summarize information concisely in 2-3 sentences.",
|
||||
)
|
||||
|
||||
@@ -43,7 +43,7 @@ async def main():
|
||||
# 3. Create a team with both local and remote agents
|
||||
team = Team(
|
||||
name="Hybrid Research Team",
|
||||
model=OpenAIResponses(id="gpt-4o-mini"),
|
||||
model=OpenAIResponses(id="gpt-5.6-luna"),
|
||||
members=[summarizer, remote_explorer],
|
||||
instructions="""\
|
||||
You are a research team leader. You have access to:
|
||||
|
||||
@@ -25,21 +25,21 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
hackernews_agent = Agent(
|
||||
name="Hackernews Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[HackerNewsTools()],
|
||||
role="Extract key insights and content from Hackernews posts",
|
||||
)
|
||||
|
||||
web_agent = Agent(
|
||||
name="Web Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
role="Search the web for the latest news and trends",
|
||||
)
|
||||
|
||||
content_planner = Agent(
|
||||
name="Content Planner",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"Plan a content schedule over 4 weeks for the provided topic and research content",
|
||||
"Ensure that I have posts for 3 posts per week",
|
||||
@@ -48,7 +48,7 @@ content_planner = Agent(
|
||||
|
||||
writer_agent = Agent(
|
||||
name="Writer Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Write a blog post on the topic",
|
||||
)
|
||||
|
||||
|
||||
+3
-3
@@ -23,21 +23,21 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
web_agent = Agent(
|
||||
name="Web Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
role="Search the web for the latest news and trends",
|
||||
)
|
||||
|
||||
hackernews_agent = Agent(
|
||||
name="Hackernews Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[HackerNewsTools()],
|
||||
role="Extract key insights and content from Hackernews posts",
|
||||
)
|
||||
|
||||
writer_agent = Agent(
|
||||
name="Writer Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Write a blog post on the topic",
|
||||
)
|
||||
|
||||
|
||||
+3
-3
@@ -19,20 +19,20 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
researcher = Agent(
|
||||
name="Research Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
instructions="Research the given topic and provide key facts and insights.",
|
||||
)
|
||||
|
||||
writer = Agent(
|
||||
name="Writing Agent",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Write a comprehensive article based on the research provided. Make it engaging and well-structured.",
|
||||
)
|
||||
|
||||
editor = Agent(
|
||||
name="Editor Agent",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Review and edit the article for clarity, grammar, and flow. Provide a polished final version.",
|
||||
)
|
||||
|
||||
|
||||
+6
-6
@@ -21,40 +21,40 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
researcher = Agent(
|
||||
name="Research Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
instructions="Research the given topic and provide key facts and insights.",
|
||||
)
|
||||
|
||||
tech_researcher = Agent(
|
||||
name="Tech Research Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[HackerNewsTools()],
|
||||
instructions="Research tech-related topics from Hacker News and provide latest developments.",
|
||||
)
|
||||
|
||||
news_researcher = Agent(
|
||||
name="News Research Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[ExaTools()],
|
||||
instructions="Research current news and trends using Exa search.",
|
||||
)
|
||||
|
||||
writer = Agent(
|
||||
name="Writing Agent",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Write a comprehensive article based on the research provided. Make it engaging and well-structured.",
|
||||
)
|
||||
|
||||
editor = Agent(
|
||||
name="Editor Agent",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Review and edit the article for clarity, grammar, and flow. Provide a polished final version.",
|
||||
)
|
||||
|
||||
content_agent = Agent(
|
||||
name="Content Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Prepare and format content for writing based on research inputs.",
|
||||
)
|
||||
|
||||
|
||||
+1
-1
@@ -24,7 +24,7 @@ read_agent = Agent(
|
||||
|
||||
summarize_agent = Agent(
|
||||
name="Summarize Agent",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"Summarize the contents of the attached file.",
|
||||
],
|
||||
|
||||
+3
-3
@@ -21,21 +21,21 @@ from rich.pretty import pprint
|
||||
# ---------------------------------------------------------------------------
|
||||
hackernews_agent = Agent(
|
||||
name="Hackernews Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[HackerNewsTools()],
|
||||
role="Extract key insights and content from Hackernews posts",
|
||||
)
|
||||
|
||||
web_agent = Agent(
|
||||
name="Web Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
role="Search the web for the latest news and trends",
|
||||
)
|
||||
|
||||
content_planner = Agent(
|
||||
name="Content Planner",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"Plan a content schedule over 4 weeks for the provided topic and research content",
|
||||
"Ensure that I have posts for 3 posts per week",
|
||||
|
||||
+3
-3
@@ -23,21 +23,21 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
hackernews_agent = Agent(
|
||||
name="Hackernews Agent",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[HackerNewsTools()],
|
||||
instructions="Extract key insights and content from Hackernews posts",
|
||||
)
|
||||
|
||||
web_agent = Agent(
|
||||
name="Web Agent",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
instructions="Search the web for the latest news and trends",
|
||||
)
|
||||
|
||||
content_planner = Agent(
|
||||
name="Content Planner",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"Plan a content schedule over 4 weeks for the provided topic and research content",
|
||||
"Ensure that I have posts for 3 posts per week",
|
||||
|
||||
@@ -24,21 +24,21 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
hackernews_agent = Agent(
|
||||
name="Hackernews Agent",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[HackerNewsTools()],
|
||||
instructions="Extract key insights and content from Hackernews posts",
|
||||
)
|
||||
|
||||
web_agent = Agent(
|
||||
name="Web Agent",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
instructions="Search the web for the latest news and trends",
|
||||
)
|
||||
|
||||
content_planner = Agent(
|
||||
name="Content Planner",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"Plan a content schedule over 4 weeks for the provided topic and research content",
|
||||
"Ensure that I have posts for 3 posts per week",
|
||||
@@ -47,7 +47,7 @@ content_planner = Agent(
|
||||
|
||||
streaming_content_planner = Agent(
|
||||
name="Content Planner",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"Plan a content schedule over 4 weeks for the provided topic and research content",
|
||||
"Ensure that I have posts for 3 posts per week",
|
||||
|
||||
+4
-4
@@ -24,21 +24,21 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
hackernews_agent = Agent(
|
||||
name="Hackernews Agent",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[HackerNewsTools()],
|
||||
instructions="Extract key insights and content from Hackernews posts",
|
||||
)
|
||||
|
||||
web_agent = Agent(
|
||||
name="Web Agent",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
instructions="Search the web for the latest news and trends",
|
||||
)
|
||||
|
||||
content_planner = Agent(
|
||||
name="Content Planner",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"Plan a content schedule over 4 weeks for the provided topic and research content",
|
||||
"Ensure that I have posts for 3 posts per week",
|
||||
@@ -47,7 +47,7 @@ content_planner = Agent(
|
||||
|
||||
streaming_content_planner = Agent(
|
||||
name="Content Planner",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"Plan a content schedule over 4 weeks for the provided topic and research content",
|
||||
"Ensure that I have posts for 3 posts per week",
|
||||
|
||||
@@ -22,14 +22,14 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
hackernews_agent = Agent(
|
||||
name="Hackernews Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[HackerNewsTools()],
|
||||
role="Extract key insights and content from Hackernews posts",
|
||||
)
|
||||
|
||||
web_agent = Agent(
|
||||
name="Web Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
role="Search the web for the latest news and trends",
|
||||
)
|
||||
@@ -43,7 +43,7 @@ streaming_hackernews_agent = Agent(
|
||||
|
||||
content_planner = Agent(
|
||||
name="Content Planner",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"Plan a content schedule over 4 weeks for the provided topic and research content",
|
||||
"Ensure that I have posts for 3 posts per week",
|
||||
|
||||
@@ -8,7 +8,7 @@ Generated: 2026-02-08 16:39:09
|
||||
|
||||
**Description:** Executed with `.venvs/demo/bin/python` (mode: normal, timeout: 35s).
|
||||
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-4o
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-5.6-luna
|
||||
|
||||
---
|
||||
|
||||
@@ -28,7 +28,7 @@ Generated: 2026-02-08 16:39:09
|
||||
|
||||
**Description:** Executed with `.venvs/demo/bin/python` (mode: normal, timeout: 35s).
|
||||
|
||||
**Result:** Timed out after 35s. DEBUG Creating new async OpenAI client for model gpt-4o-mini
|
||||
**Result:** Timed out after 35s. DEBUG Creating new async OpenAI client for model gpt-5.6-luna
|
||||
|
||||
---
|
||||
|
||||
@@ -78,7 +78,7 @@ Generated: 2026-02-08 16:39:09
|
||||
|
||||
**Description:** Executed with `.venvs/demo/bin/python` (mode: normal, timeout: 35s).
|
||||
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-4o
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-5.6-luna
|
||||
|
||||
---
|
||||
|
||||
@@ -98,6 +98,6 @@ Generated: 2026-02-08 16:39:09
|
||||
|
||||
**Description:** Executed with `.venvs/demo/bin/python` (mode: normal, timeout: 35s).
|
||||
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-4o
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-5.6-luna
|
||||
|
||||
---
|
||||
|
||||
@@ -8,7 +8,7 @@ Generated: 2026-02-08 16:39:09
|
||||
|
||||
**Description:** Executed with `.venvs/demo/bin/python` (mode: normal, timeout: 35s).
|
||||
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-4o
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-5.6-luna
|
||||
|
||||
---
|
||||
|
||||
@@ -18,6 +18,6 @@ Generated: 2026-02-08 16:39:09
|
||||
|
||||
**Description:** Executed with `.venvs/demo/bin/python` (mode: normal, timeout: 35s).
|
||||
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-4o
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-5.6-luna
|
||||
|
||||
---
|
||||
|
||||
@@ -38,7 +38,7 @@ Generated: 2026-02-08 16:39:09
|
||||
|
||||
**Description:** Executed with `.venvs/demo/bin/python` (mode: normal, timeout: 35s).
|
||||
|
||||
**Result:** Timed out after 35s. DEBUG Creating new async OpenAI client for model gpt-4o
|
||||
**Result:** Timed out after 35s. DEBUG Creating new async OpenAI client for model gpt-5.6-luna
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -20,13 +20,13 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
draft_writer = Agent(
|
||||
name="draft_writer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Write a draft on the given topic. Keep it concise.",
|
||||
)
|
||||
|
||||
refiner = Agent(
|
||||
name="refiner",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Refine and improve the given draft. Make it more polished.",
|
||||
)
|
||||
|
||||
|
||||
@@ -17,9 +17,15 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
# Create Agents
|
||||
# ---------------------------------------------------------------------------
|
||||
step_a = Agent(name="step_a", model=OpenAIChat(id="gpt-4o-mini"), instructions="Step A")
|
||||
step_b = Agent(name="step_b", model=OpenAIChat(id="gpt-4o-mini"), instructions="Step B")
|
||||
step_c = Agent(name="step_c", model=OpenAIChat(id="gpt-4o-mini"), instructions="Step C")
|
||||
step_a = Agent(
|
||||
name="step_a", model=OpenAIChat(id="gpt-5.6-luna"), instructions="Step A"
|
||||
)
|
||||
step_b = Agent(
|
||||
name="step_b", model=OpenAIChat(id="gpt-5.6-luna"), instructions="Step B"
|
||||
)
|
||||
step_c = Agent(
|
||||
name="step_c", model=OpenAIChat(id="gpt-5.6-luna"), instructions="Step C"
|
||||
)
|
||||
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
@@ -37,7 +37,7 @@ class MediaRequest(BaseModel):
|
||||
# ---------------------------------------------------------------------------
|
||||
image_generator = Agent(
|
||||
name="Image Generator",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[OpenAITools(image_model="gpt-image-1")],
|
||||
instructions="""You are an expert image generation specialist.
|
||||
When users request image creation, you should ACTUALLY GENERATE the image using your available image generation tools.
|
||||
@@ -50,7 +50,7 @@ image_generator = Agent(
|
||||
|
||||
image_describer = Agent(
|
||||
name="Image Describer",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="""You are an expert image analyst and describer.
|
||||
When you receive an image (either as input or from a previous step), analyze and describe it in vivid detail, including:
|
||||
- Visual elements and composition
|
||||
@@ -64,7 +64,7 @@ image_describer = Agent(
|
||||
|
||||
video_generator = Agent(
|
||||
name="Video Generator",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[GeminiTools(vertexai=True)],
|
||||
instructions="""You are an expert video production specialist.
|
||||
Create detailed video generation prompts and storyboards based on user requests.
|
||||
@@ -75,7 +75,7 @@ video_generator = Agent(
|
||||
|
||||
video_describer = Agent(
|
||||
name="Video Describer",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="""You are an expert video analyst and critic.
|
||||
Analyze and describe videos comprehensively, including:
|
||||
- Scene composition and cinematography
|
||||
|
||||
@@ -19,19 +19,19 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
tech_expert = Agent(
|
||||
name="tech_expert",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You are a tech expert. Provide technical analysis.",
|
||||
)
|
||||
|
||||
biz_expert = Agent(
|
||||
name="biz_expert",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You are a business expert. Provide business insights.",
|
||||
)
|
||||
|
||||
generalist = Agent(
|
||||
name="generalist",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You are a generalist. Provide general information.",
|
||||
)
|
||||
|
||||
@@ -72,19 +72,19 @@ workflow_string_selector = Workflow(
|
||||
# ---------------------------------------------------------------------------
|
||||
researcher = Agent(
|
||||
name="researcher",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You are a researcher.",
|
||||
)
|
||||
|
||||
writer = Agent(
|
||||
name="writer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You are a writer.",
|
||||
)
|
||||
|
||||
reviewer = Agent(
|
||||
name="reviewer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You are a reviewer.",
|
||||
)
|
||||
|
||||
@@ -124,9 +124,15 @@ workflow_step_choices = Workflow(
|
||||
# ---------------------------------------------------------------------------
|
||||
# Create Agents For Nested Choices Selector
|
||||
# ---------------------------------------------------------------------------
|
||||
step_a = Agent(name="step_a", model=OpenAIChat(id="gpt-4o-mini"), instructions="Step A")
|
||||
step_b = Agent(name="step_b", model=OpenAIChat(id="gpt-4o-mini"), instructions="Step B")
|
||||
step_c = Agent(name="step_c", model=OpenAIChat(id="gpt-4o-mini"), instructions="Step C")
|
||||
step_a = Agent(
|
||||
name="step_a", model=OpenAIChat(id="gpt-5.6-luna"), instructions="Step A"
|
||||
)
|
||||
step_b = Agent(
|
||||
name="step_b", model=OpenAIChat(id="gpt-5.6-luna"), instructions="Step B"
|
||||
)
|
||||
step_c = Agent(
|
||||
name="step_c", model=OpenAIChat(id="gpt-5.6-luna"), instructions="Step C"
|
||||
)
|
||||
|
||||
|
||||
def nested_selector(
|
||||
|
||||
@@ -19,19 +19,19 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
researcher = Agent(
|
||||
name="researcher",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You are a researcher.",
|
||||
)
|
||||
|
||||
writer = Agent(
|
||||
name="writer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You are a writer.",
|
||||
)
|
||||
|
||||
reviewer = Agent(
|
||||
name="reviewer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You are a reviewer.",
|
||||
)
|
||||
|
||||
|
||||
@@ -19,19 +19,19 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
tech_expert = Agent(
|
||||
name="tech_expert",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You are a tech expert. Provide technical analysis.",
|
||||
)
|
||||
|
||||
biz_expert = Agent(
|
||||
name="biz_expert",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You are a business expert. Provide business insights.",
|
||||
)
|
||||
|
||||
generalist = Agent(
|
||||
name="generalist",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You are a generalist. Provide general information.",
|
||||
)
|
||||
|
||||
|
||||
@@ -208,7 +208,7 @@ Generated: 2026-02-08 16:39:09
|
||||
|
||||
**Description:** Executed with `.venvs/demo/bin/python` (mode: normal, timeout: 35s).
|
||||
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-4o
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-5.6-luna
|
||||
|
||||
---
|
||||
|
||||
@@ -268,7 +268,7 @@ Generated: 2026-02-08 16:39:09
|
||||
|
||||
**Description:** Executed with `.venvs/demo/bin/python` (mode: normal, timeout: 35s).
|
||||
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-4o
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-5.6-luna
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -22,21 +22,21 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
hackernews_agent = Agent(
|
||||
name="Hackernews Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[HackerNewsTools()],
|
||||
role="Extract key insights and content from Hackernews posts",
|
||||
)
|
||||
|
||||
web_agent = Agent(
|
||||
name="Web Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
role="Search the web for the latest news and trends",
|
||||
)
|
||||
|
||||
content_planner = Agent(
|
||||
name="Content Planner",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"Plan a content schedule over 4 weeks for the provided topic and research content",
|
||||
"Ensure that I have posts for 3 posts per week",
|
||||
|
||||
@@ -29,14 +29,14 @@ SECURITY_KEY = os.getenv("SECURITY_KEY", "your-secret-key") # Set your key here
|
||||
# ---------------------------------------------------------------------------
|
||||
hackernews_agent = Agent(
|
||||
name="HackerNews Researcher",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[HackerNewsTools()],
|
||||
instructions="Research tech news and trends from HackerNews",
|
||||
)
|
||||
|
||||
search_agent = Agent(
|
||||
name="Search Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
instructions="Search for additional information on the web",
|
||||
)
|
||||
|
||||
@@ -76,26 +76,26 @@ security_workflow = Workflow(
|
||||
# ---------------------------------------------------------------------------
|
||||
content_creator = Agent(
|
||||
name="Content Creator",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
instructions="Create engaging content on the given topic. Research and write comprehensive articles.",
|
||||
)
|
||||
|
||||
fact_checker = Agent(
|
||||
name="Fact Checker",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Verify facts and check accuracy of content. Flag any misinformation.",
|
||||
)
|
||||
|
||||
editor = Agent(
|
||||
name="Editor",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Edit and polish content for publication. Ensure clarity and flow.",
|
||||
)
|
||||
|
||||
publisher = Agent(
|
||||
name="Publisher",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Prepare content for publication and handle final formatting.",
|
||||
)
|
||||
|
||||
|
||||
+2
-2
@@ -10,7 +10,7 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
report_generator = Agent(
|
||||
name="Report Generator",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[FileGenerationTools(enable_pdf_generation=True)],
|
||||
instructions=[
|
||||
"You are a data analyst that generates reports.",
|
||||
@@ -30,7 +30,7 @@ generate_report_step = Step(
|
||||
# ---------------------------------------------------------------------------
|
||||
report_analyzer = Agent(
|
||||
name="Report Analyzer",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"You are a business analyst.",
|
||||
"Analyze the attached PDF report and provide insights.",
|
||||
|
||||
@@ -21,7 +21,7 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
input_validator = Agent(
|
||||
name="Input Validator Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
pre_hooks=[PromptInjectionGuardrail()],
|
||||
description="Validates and processes user input while blocking prompt injection attacks.",
|
||||
instructions=[
|
||||
@@ -34,7 +34,7 @@ input_validator = Agent(
|
||||
|
||||
content_processor = Agent(
|
||||
name="Content Processor Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
description="Processes validated content and provides helpful information.",
|
||||
instructions=[
|
||||
|
||||
@@ -16,7 +16,7 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
tutor_agent = Agent(
|
||||
name="AI Tutor",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"You are an expert tutor who provides personalized educational support.",
|
||||
"You have access to our full conversation history.",
|
||||
|
||||
@@ -160,7 +160,7 @@ def create_content_workflow() -> Workflow:
|
||||
name="Content Research",
|
||||
agent=Agent(
|
||||
name="Research Specialist",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"You are an expert research specialist for content creation.",
|
||||
"Conduct thorough research on the requested topic.",
|
||||
@@ -182,7 +182,7 @@ def create_content_workflow() -> Workflow:
|
||||
name="Strategic Content Creation",
|
||||
agent=Agent(
|
||||
name="Content Strategist",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"You are a strategic content writer who creates high-quality, unique content.",
|
||||
"Use the research and strategic analysis to create compelling content.",
|
||||
|
||||
@@ -20,7 +20,7 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
tech_support_agent = Agent(
|
||||
name="Technical Support Specialist",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"You are a technical support specialist with deep product knowledge.",
|
||||
"You have access to the full conversation history with this customer.",
|
||||
@@ -32,7 +32,7 @@ tech_support_agent = Agent(
|
||||
|
||||
billing_agent = Agent(
|
||||
name="Billing & Account Specialist",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"You are a billing and account specialist.",
|
||||
"You have access to the full conversation history with this customer.",
|
||||
@@ -44,7 +44,7 @@ billing_agent = Agent(
|
||||
|
||||
general_support_agent = Agent(
|
||||
name="General Customer Support",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"You are a general customer support representative.",
|
||||
"You have access to the full conversation history with this customer.",
|
||||
|
||||
@@ -16,7 +16,7 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
meal_suggester = Agent(
|
||||
name="Meal Suggester",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"You are a friendly meal planning assistant who suggests meal categories and cuisines.",
|
||||
"Consider the time of day, day of the week, and any context from the conversation.",
|
||||
@@ -27,7 +27,7 @@ meal_suggester = Agent(
|
||||
|
||||
recipe_specialist = Agent(
|
||||
name="Recipe Specialist",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"You are a recipe expert who provides specific, detailed recipe recommendations.",
|
||||
"Pay close attention to the full conversation to understand user preferences and restrictions.",
|
||||
@@ -133,7 +133,7 @@ meal_workflow = Workflow(
|
||||
# ---------------------------------------------------------------------------
|
||||
research_agent = Agent(
|
||||
name="Research Specialist",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"You are a research specialist who gathers information on topics.",
|
||||
"Conduct thorough research and provide key facts, trends, and insights.",
|
||||
@@ -145,7 +145,7 @@ research_agent = Agent(
|
||||
|
||||
content_creator = Agent(
|
||||
name="Content Creator",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"You are an expert content creator who writes engaging content.",
|
||||
"Use the research provided and CREATE UNIQUE content that stands out.",
|
||||
@@ -162,7 +162,7 @@ content_creator = Agent(
|
||||
|
||||
publisher_agent = Agent(
|
||||
name="Content Publisher",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"You are a content publishing specialist.",
|
||||
"Review the created content and prepare it for publication.",
|
||||
|
||||
@@ -48,7 +48,7 @@ Generated: 2026-02-08 16:39:09
|
||||
|
||||
**Description:** Executed with `.venvs/demo/bin/python` (mode: normal, timeout: 35s).
|
||||
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-4o
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-5.6-luna
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -122,14 +122,14 @@ def cancel_after_delay(
|
||||
def main() -> None:
|
||||
researcher = Agent(
|
||||
name="Research Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
instructions="Research the given topic and provide key facts and insights.",
|
||||
)
|
||||
|
||||
writer = Agent(
|
||||
name="Writing Agent",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Write a comprehensive article based on the research provided. Make it engaging and well-structured.",
|
||||
)
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
agent = Agent(
|
||||
name="ResearchAgent",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You are a helpful research assistant. Be concise.",
|
||||
)
|
||||
|
||||
|
||||
@@ -22,21 +22,21 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
hackernews_agent = Agent(
|
||||
name="Hackernews Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[HackerNewsTools()],
|
||||
role="Extract key insights and content from Hackernews posts",
|
||||
)
|
||||
|
||||
web_agent = Agent(
|
||||
name="Web Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
role="Search the web for the latest news and trends",
|
||||
)
|
||||
|
||||
content_planner = Agent(
|
||||
name="Content Planner",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"Plan a content schedule over 4 weeks for the provided topic and research content",
|
||||
"Ensure that I have posts for 3 posts per week",
|
||||
|
||||
@@ -24,7 +24,7 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
researcher = Agent(
|
||||
name="Content Researcher",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"You are a content researcher.",
|
||||
"Research the given topic and provide 3-5 key points.",
|
||||
@@ -36,7 +36,7 @@ researcher = Agent(
|
||||
|
||||
writer = Agent(
|
||||
name="Content Writer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"You are a content writer.",
|
||||
"Take the research from the previous step and write a short article.",
|
||||
|
||||
@@ -25,7 +25,7 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
config_aware_agent = Agent(
|
||||
name="Config-Aware Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"You are a helpful assistant that operates based on the provided configuration.",
|
||||
"Check your additional context for configuration details.",
|
||||
|
||||
@@ -28,7 +28,7 @@ Generated: 2026-02-08 16:39:09
|
||||
|
||||
**Description:** Executed with `.venvs/demo/bin/python` (mode: normal, timeout: 35s).
|
||||
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-4o
|
||||
**Result:** Timed out after 35s. DEBUG Creating new sync OpenAI client for model gpt-5.6-luna
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -18,14 +18,14 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
researcher = Agent(
|
||||
name="Research Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
instructions="Research the given topic and provide key facts and insights.",
|
||||
)
|
||||
|
||||
writer = Agent(
|
||||
name="Writing Agent",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Write a comprehensive article based on the research provided. Make it engaging and well-structured.",
|
||||
)
|
||||
|
||||
|
||||
@@ -24,21 +24,21 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
hackernews_agent = Agent(
|
||||
name="Hackernews Agent",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[HackerNewsTools()],
|
||||
instructions="Extract key insights and content from Hackernews posts",
|
||||
)
|
||||
|
||||
web_agent = Agent(
|
||||
name="Web Agent",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
instructions="Search the web for the latest news and trends",
|
||||
)
|
||||
|
||||
content_planner = Agent(
|
||||
name="Content Planner",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"Plan a content schedule over 4 weeks for the provided topic and research content",
|
||||
"Ensure that I have posts for 3 posts per week",
|
||||
@@ -47,7 +47,7 @@ content_planner = Agent(
|
||||
|
||||
streaming_content_planner = Agent(
|
||||
name="Content Planner",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"Plan a content schedule over 4 weeks for the provided topic and research content",
|
||||
"Ensure that I have posts for 3 posts per week",
|
||||
@@ -60,7 +60,7 @@ streaming_content_planner = Agent(
|
||||
# ---------------------------------------------------------------------------
|
||||
research_team = Team(
|
||||
name="Research Team",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
members=[hackernews_agent, web_agent],
|
||||
instructions="Analyze content and create comprehensive social media strategy",
|
||||
)
|
||||
|
||||
@@ -18,13 +18,13 @@ from agno.workflow.workflow import Workflow
|
||||
# ---------------------------------------------------------------------------
|
||||
image_analyzer = Agent(
|
||||
name="Image Analyzer",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Analyze the provided image and extract key details, objects, and context.",
|
||||
)
|
||||
|
||||
news_researcher = Agent(
|
||||
name="News Researcher",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
instructions="Search for latest news and information related to the analyzed image content.",
|
||||
)
|
||||
|
||||
@@ -37,21 +37,21 @@ class ResearchTopic(BaseModel):
|
||||
# ---------------------------------------------------------------------------
|
||||
hackernews_agent = Agent(
|
||||
name="Hackernews Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[HackerNewsTools()],
|
||||
role="Extract key insights and content from Hackernews posts",
|
||||
)
|
||||
|
||||
web_agent = Agent(
|
||||
name="Web Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
role="Search the web for the latest news and trends",
|
||||
)
|
||||
|
||||
content_planner = Agent(
|
||||
name="Content Planner",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"Plan a content schedule over 4 weeks for the provided topic and research content",
|
||||
"Ensure that I have posts for 3 posts per week",
|
||||
|
||||
@@ -33,21 +33,21 @@ class ResearchTopic(BaseModel):
|
||||
# ---------------------------------------------------------------------------
|
||||
hackernews_agent = Agent(
|
||||
name="Hackernews Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[HackerNewsTools()],
|
||||
role="Extract key insights and content from Hackernews posts",
|
||||
)
|
||||
|
||||
web_agent = Agent(
|
||||
name="Web Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
role="Search the web for the latest news and trends",
|
||||
)
|
||||
|
||||
content_planner = Agent(
|
||||
name="Content Planner",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=[
|
||||
"Plan a content schedule over 4 weeks for the provided topic and research content",
|
||||
"Ensure that I have posts for 3 posts per week",
|
||||
|
||||
@@ -73,7 +73,7 @@ class FinalContentPlan(BaseModel):
|
||||
# ---------------------------------------------------------------------------
|
||||
research_agent = Agent(
|
||||
name="AI Research Specialist",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[HackerNewsTools(), WebSearchTools()],
|
||||
role="Research AI trends and extract structured insights",
|
||||
output_schema=ResearchFindings,
|
||||
@@ -87,7 +87,7 @@ research_agent = Agent(
|
||||
|
||||
strategy_agent = Agent(
|
||||
name="Content Strategy Expert",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
role="Create content strategies based on research findings",
|
||||
output_schema=ContentStrategy,
|
||||
instructions=[
|
||||
@@ -100,7 +100,7 @@ strategy_agent = Agent(
|
||||
|
||||
planning_agent = Agent(
|
||||
name="Content Planning Specialist",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
role="Create detailed content plans and calendars",
|
||||
output_schema=FinalContentPlan,
|
||||
instructions=[
|
||||
|
||||
@@ -273,7 +273,7 @@ def simple_data_processor(step_input: StepInput) -> StepOutput:
|
||||
# ---------------------------------------------------------------------------
|
||||
research_agent = Agent(
|
||||
name="AI Research Specialist",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[HackerNewsTools(), WebSearchTools()],
|
||||
role="Research AI trends and extract structured insights",
|
||||
output_schema=ResearchFindings,
|
||||
@@ -287,7 +287,7 @@ research_agent = Agent(
|
||||
|
||||
strategy_agent = Agent(
|
||||
name="Content Strategy Expert",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
role="Create content strategies based on research findings",
|
||||
output_schema=ContentStrategy,
|
||||
instructions=[
|
||||
@@ -300,7 +300,7 @@ strategy_agent = Agent(
|
||||
|
||||
planning_agent = Agent(
|
||||
name="Content Planning Specialist",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
role="Create detailed content plans and calendars",
|
||||
output_schema=FinalContentPlan,
|
||||
instructions=[
|
||||
|
||||
@@ -118,7 +118,7 @@ marketing_expert = Agent(
|
||||
|
||||
project_manager = Agent(
|
||||
name="Project Manager",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
role="Create detailed project plans and timelines",
|
||||
instructions=[
|
||||
"Develop comprehensive implementation plans",
|
||||
@@ -129,7 +129,7 @@ project_manager = Agent(
|
||||
|
||||
budget_analyst = Agent(
|
||||
name="Budget Analyst",
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
role="Analyze costs and provide budget recommendations",
|
||||
instructions=[
|
||||
"Estimate project costs and resource requirements",
|
||||
@@ -145,7 +145,7 @@ research_team = Team(
|
||||
name="AI Research Team",
|
||||
members=[research_specialist, data_analyst],
|
||||
delegate_to_all_members=True,
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
description="A collaborative team that researches AI trends and extracts structured insights",
|
||||
output_schema=ResearchFindings,
|
||||
instructions=[
|
||||
@@ -160,7 +160,7 @@ strategy_team = Team(
|
||||
name="Content Strategy Team",
|
||||
members=[content_strategist, marketing_expert],
|
||||
delegate_to_all_members=True,
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
description="A strategic team that creates comprehensive content strategies",
|
||||
output_schema=ContentStrategy,
|
||||
instructions=[
|
||||
@@ -175,7 +175,7 @@ planning_team = Team(
|
||||
name="Content Planning Team",
|
||||
members=[project_manager, budget_analyst],
|
||||
delegate_to_all_members=True,
|
||||
model=OpenAIChat(id="gpt-4o"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
description="A planning team that creates detailed implementation plans",
|
||||
output_schema=FinalContentPlan,
|
||||
instructions=[
|
||||
|
||||
@@ -39,21 +39,21 @@ FEW_SHOT_EXAMPLES = dedent(
|
||||
# ---------------------------------------------------------------------------
|
||||
web_agent = Agent(
|
||||
name="Web Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[WebSearchTools()],
|
||||
role="Search the web for the latest news and trends",
|
||||
)
|
||||
|
||||
hackernews_agent = Agent(
|
||||
name="Hackernews Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[HackerNewsTools()],
|
||||
role="Extract key insights and content from Hackernews posts",
|
||||
)
|
||||
|
||||
writer_agent = Agent(
|
||||
name="Writer Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Write a blog post on the topic",
|
||||
)
|
||||
|
||||
|
||||
@@ -24,14 +24,14 @@ if not CEL_AVAILABLE:
|
||||
# ---------------------------------------------------------------------------
|
||||
high_priority_agent = Agent(
|
||||
name="High Priority Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You handle high-priority tasks. Be thorough and detailed.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
low_priority_agent = Agent(
|
||||
name="Low Priority Agent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You handle standard tasks. Be helpful and concise.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
@@ -24,14 +24,14 @@ if not CEL_AVAILABLE:
|
||||
# ---------------------------------------------------------------------------
|
||||
urgent_handler = Agent(
|
||||
name="Urgent Handler",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You handle urgent requests with high priority. Be concise and action-oriented.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
normal_handler = Agent(
|
||||
name="Normal Handler",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You handle normal requests thoroughly and thoughtfully.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
@@ -24,7 +24,7 @@ if not CEL_AVAILABLE:
|
||||
# ---------------------------------------------------------------------------
|
||||
classifier = Agent(
|
||||
name="Classifier",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=(
|
||||
"Classify the request as either TECHNICAL or GENERAL. "
|
||||
"Respond with exactly one word: TECHNICAL or GENERAL."
|
||||
@@ -34,14 +34,14 @@ classifier = Agent(
|
||||
|
||||
technical_agent = Agent(
|
||||
name="Technical Support",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You are a technical support specialist. Provide detailed technical help.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
general_agent = Agent(
|
||||
name="General Support",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You handle general inquiries. Be friendly and helpful.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
@@ -24,21 +24,21 @@ if not CEL_AVAILABLE:
|
||||
# ---------------------------------------------------------------------------
|
||||
researcher = Agent(
|
||||
name="Researcher",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Research the topic. If the topic involves safety risks, include SAFETY_REVIEW_NEEDED in your response.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
safety_reviewer = Agent(
|
||||
name="Safety Reviewer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Review the research for safety concerns and provide recommendations.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
publisher = Agent(
|
||||
name="Publisher",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Prepare the research for publication.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
@@ -53,14 +53,14 @@ def reset_retry_count(step_input: StepInput, run_context: RunContext) -> StepOut
|
||||
# ---------------------------------------------------------------------------
|
||||
retry_agent = Agent(
|
||||
name="Retry Handler",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You are handling a retry attempt. Acknowledge this is a retry and try a different approach.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
max_retries_agent = Agent(
|
||||
name="Max Retries Handler",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Maximum retries reached. Provide a helpful fallback response and suggest alternatives.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
@@ -24,14 +24,14 @@ if not CEL_AVAILABLE:
|
||||
# ---------------------------------------------------------------------------
|
||||
researcher = Agent(
|
||||
name="Researcher",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Research the given topic and provide detailed findings.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
reviewer = Agent(
|
||||
name="Reviewer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Review the research for completeness and accuracy.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
@@ -24,7 +24,7 @@ if not CEL_AVAILABLE:
|
||||
# ---------------------------------------------------------------------------
|
||||
editor = Agent(
|
||||
name="Editor",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=(
|
||||
"Edit and refine the text. When the text is polished and ready, "
|
||||
"include the word DONE at the end of your response."
|
||||
|
||||
@@ -24,7 +24,7 @@ if not CEL_AVAILABLE:
|
||||
# ---------------------------------------------------------------------------
|
||||
writer = Agent(
|
||||
name="Writer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Write a short paragraph expanding on the topic. Build on previous content.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
@@ -24,14 +24,14 @@ if not CEL_AVAILABLE:
|
||||
# ---------------------------------------------------------------------------
|
||||
researcher = Agent(
|
||||
name="Researcher",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Research the given topic.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
reviewer = Agent(
|
||||
name="Reviewer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=(
|
||||
"Review the research. If the research is thorough and complete, "
|
||||
"include APPROVED in your response."
|
||||
|
||||
@@ -25,21 +25,21 @@ if not CEL_AVAILABLE:
|
||||
# ---------------------------------------------------------------------------
|
||||
email_agent = Agent(
|
||||
name="Email Writer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You write professional emails. Be concise and polished.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
blog_agent = Agent(
|
||||
name="Blog Writer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You write engaging blog posts with clear structure and headings.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
tweet_agent = Agent(
|
||||
name="Tweet Writer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You write punchy tweets. Keep it under 280 characters.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
@@ -25,7 +25,7 @@ if not CEL_AVAILABLE:
|
||||
# ---------------------------------------------------------------------------
|
||||
classifier = Agent(
|
||||
name="Classifier",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions=(
|
||||
"Classify the request into exactly one category. "
|
||||
"Respond with only one word: BILLING, TECHNICAL, or GENERAL."
|
||||
@@ -35,21 +35,21 @@ classifier = Agent(
|
||||
|
||||
billing_agent = Agent(
|
||||
name="Billing Support",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You handle billing inquiries. Help with invoices, payments, and subscriptions.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
technical_agent = Agent(
|
||||
name="Technical Support",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You handle technical issues. Help with debugging and configuration.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
general_agent = Agent(
|
||||
name="General Support",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You handle general inquiries.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
@@ -25,14 +25,14 @@ if not CEL_AVAILABLE:
|
||||
# ---------------------------------------------------------------------------
|
||||
detailed_agent = Agent(
|
||||
name="Detailed Analyst",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You provide detailed, in-depth analysis with examples and data.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
brief_agent = Agent(
|
||||
name="Brief Analyst",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You provide brief, executive-summary style analysis. Keep it short.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
@@ -25,14 +25,14 @@ if not CEL_AVAILABLE:
|
||||
# ---------------------------------------------------------------------------
|
||||
video_agent = Agent(
|
||||
name="Video Specialist",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You specialize in video content creation and editing advice.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
image_agent = Agent(
|
||||
name="Image Specialist",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You specialize in image design, photography, and visual content.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
@@ -30,14 +30,14 @@ if not CEL_AVAILABLE:
|
||||
# ---------------------------------------------------------------------------
|
||||
quick_analyzer = Agent(
|
||||
name="Quick Analyzer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Provide a brief, concise analysis of the topic.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
detailed_analyzer = Agent(
|
||||
name="Detailed Analyzer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="Provide a comprehensive, in-depth analysis of the topic.",
|
||||
markdown=True,
|
||||
)
|
||||
|
||||
@@ -36,7 +36,7 @@ db = PostgresDb(db_url="postgresql+psycopg://ai:ai@localhost:5532/ai")
|
||||
|
||||
greeting_agent = Agent(
|
||||
name="GreetingAgent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
instructions="You greet people warmly. Keep it to one sentence.",
|
||||
db=db,
|
||||
telemetry=False,
|
||||
|
||||
+1
-1
@@ -45,7 +45,7 @@ def book_flight(origin: str, destination: str) -> str:
|
||||
|
||||
travel_agent = Agent(
|
||||
name="TravelAgent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[book_flight],
|
||||
instructions=(
|
||||
"You are a travel agent. Use the book_flight tool to book flights. "
|
||||
|
||||
+2
-2
@@ -54,7 +54,7 @@ def deploy_to_staging(service: str) -> str:
|
||||
|
||||
prod_agent = Agent(
|
||||
name="ProdDeployer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[deploy_to_production],
|
||||
instructions="You deploy services to production. Always use deploy_to_production.",
|
||||
db=db,
|
||||
@@ -63,7 +63,7 @@ prod_agent = Agent(
|
||||
|
||||
staging_agent = Agent(
|
||||
name="StagingDeployer",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[deploy_to_staging],
|
||||
instructions="You deploy services to staging. Always use deploy_to_staging.",
|
||||
db=db,
|
||||
|
||||
+3
-3
@@ -66,7 +66,7 @@ def post_to_slack(channel: str, message: str) -> str:
|
||||
|
||||
email_agent = Agent(
|
||||
name="EmailAgent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[send_email],
|
||||
instructions="Send email notifications. Always use send_email.",
|
||||
db=db,
|
||||
@@ -75,7 +75,7 @@ email_agent = Agent(
|
||||
|
||||
sms_agent = Agent(
|
||||
name="SMSAgent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[send_sms],
|
||||
instructions="Send SMS notifications. Always use send_sms.",
|
||||
db=db,
|
||||
@@ -84,7 +84,7 @@ sms_agent = Agent(
|
||||
|
||||
slack_agent = Agent(
|
||||
name="SlackAgent",
|
||||
model=OpenAIChat(id="gpt-4o-mini"),
|
||||
model=OpenAIChat(id="gpt-5.6-luna"),
|
||||
tools=[post_to_slack],
|
||||
instructions="Post to Slack. Always use post_to_slack.",
|
||||
db=db,
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user