基于模型Gemini 2.5 Pro Experimental 03-25的基准性测试

测试的环境:Goodle AI Studio
测试的模型:选择Gemini 2.5 Pro Experimental 03-25
测试形式:通过向模型发送指令(prompt)

测试一:让此模型使用HTML CSS和JavaScript构建一个响应式Web应用程序,使用户能够跟踪他们的每月收入和支出。(评估模型的数学能力)

将此模型输出的三个文件放入Vs Code,注意三个文件要在同一个文件下。

完成后我们打开HTML文件可以看到

操作结果:操作通过。用户可以自由添加支出收入金额,添加相应描述,同时系统会统计总支出,总收入和余额。

测试二:创建一个生命游戏(Conway The Game Of Life)(评估模型的逻辑能力)

康威生命游戏是什么:

操作过程:向模型发出指令,但这次我们选择在python脚本中运行。

操作结果:测试通过,生成康威生命游戏

测试三:发送一个任何模型都难以解决的问题——利用SVG语法创建一个对称翅膀和简单造型的蝴蝶。(评估模型输出SVG代码的能力)

操作过程:向模型发出指令,并将SVG 代码输入在线工具中来查看。

操作结果:测试通过,利用svg语法生成蝴蝶。

测试四:一个农民有一块三角形的天地,它的边不同,有三种不同的长度。13米,14米,15米。他想用一条通过其中一个顶点的线将它分成两个面积相等的区域,求出分界线的长度。(测试数学几何)

测试结果:通过。

测试五:一列火车在早上8点从A市出发以每小时70公里的恒定速度驶向500公里外的B市,火车B于上午9点从B市出发以每小时80公里的恒定速度驶向A市,火车A 在出发两小时后每隔15分钟停靠一次,火车B不间断行驶。两列火车在什么时间相遇?火车在离A市多远的地方实际相遇?(测试模型的代数和速率)

测试结果:通过。

模型进行了这几个步骤:分析初始阶段 (8:00 AM – 9:00 AM)——分析第二阶段 (9:00 AM – 10:00 AM)——分析第三阶段 (10:00 AM 之后)——计算相遇时间——计算相遇地点 (距离A市)

测试六:识别修复pythonPython 函数中的逻辑错误和潜在的运行时错误。该函数旨在返回所有正数的乘积。如果列表不包含正数,则应返回 1。该函数还应通过忽略非数字类型的列表来妥善处理它们。(三处错误)

测试结果:通过

测试七:图书馆需要购买总计正好 250 美元的教学材料。他们可以以每本 12 美元的价格购买练习册,以每本 35 美元的价格购买教育应用程序许可证,以每本 55 美元的价格购买科学套件。他们必须购买每种类型的物品中的至少一个。找出满足这些条件的所有可能组合(练习册、应用程序、套件的数量)。(测试离散数学中的数论,线性方程)

测试结果:通过

测试八:一个城镇有两种人:说真话的人(总是说真话)和撒谎的人(总是撒谎)。你遇到了三个人:A、B 和 C。A 说:“B 是个撒谎者。”B 说:“C 是个说真话的人。”C 说:“A 和 B 属于不同类型。”确定谁是说真话的人,谁是撒谎者,并逐步解释你的推理(测试模型逻辑)

测试结果:

关于测试八Gemini 2.5和DeepseekV3的对比

操作过程:使用OpenRouter同时选择这两个模型并提问测试八的问题

操作结果:内容一致,Gemini2.5速度更快。

下一步操作,在更多测试内容上通过结果和速度将Gemini2.5与其它模型做对比。

OpenAI Agents SDK 分析

核心概念

  1. 智能体(Agents):配置了指令、工具、防护栏和移交功能的LLM
  2. 移交(Handoffs):允许智能体将控制权转移给其他智能体来处理特定任务
  3. 防护栏(Guardrails):可配置的输入/输出验证安全检查
  4. 追踪(Tracing):内置的智能体运行跟踪,用于调试和优化

安装

git clone https://github.com/openai/openai-agents-python.git
cd openai-agents-python

设置Python环境

python -m venv env
source env/bin/activate # Linux/Mac
# 或者在Windows上:
# env\Scripts\activate

安装SDK

pip install openai-agents

设置API密钥

# Linux/Mac
export OPENAI_API_KEY=你的密钥

# Windows
# set OPENAI_API_KEY=你的密钥

运行示例

# 例如,运行hello world示例
cd examples/basic
python hello_world.py

实例分析

  • agent_patterns文件夹

agents_as_tools.py

  • 展示了”代理即工具”模式
  • 前线代理(orchestrator_agent)接收用户消息,然后从一组翻译代理中选择合适的工具
  • 包含西班牙语、法语和意大利语翻译代理
  • 最后使用合成代理检查翻译并产生最终响应

deterministic.py

  • 展示了确定性流程,每个步骤由特定代理执行
  • 流程:生成故事大纲 → 检查大纲质量和类型 → 如果符合条件则创作故事
  • 包含质量门控检查,如果大纲不是高质量或不是科幻故事则终止流程

input_guardrails.py

  • 展示了如何使用输入防护机制
  • 防护机制在代理执行的同时并行运行
  • 实现了一个检测用户是否请求解决数学作业的防护措施
  • 如果防护触发,会用拒绝消息响应而不是正常处理请求

llm_as_a_judge.py

  • 展示了”LLM作为评判者”模式
  • 第一个代理生成故事大纲,第二个代理评判并提供反馈
  • 循环迭代直到评判代理对大纲满意为止
  • 强制要求至少一次修改(”第一次尝试永远不给通过”)

output_guardrails.py

  • 展示了如何使用输出防护机制
  • 检查代理输出是否包含敏感数据(这里是电话号码)
  • 如果检测到敏感数据,防护措施会触发

parallelization.py

  • 展示了并行化模式
  • 并行运行同一代理三次,产生三个不同的翻译结果
  • 然后使用选择代理挑选最佳翻译

routing.py

  • 展示了交接/路由模式
  • 分流代理接收第一条消息,然后根据请求的语言交给合适的代理
  • 支持法语、西班牙语和英语代理
  • 响应实时流式传输给用户

hello_world.py

这是最基本的例子,展示了如何创建一个简单的代理并运行它:

  • 创建一个只用海口(haiku)回答的代理
  • 使用 Runner.run() 执行代理
  • 获取最终输出结果

dynamic_system_prompt.py

展示了如何基于上下文动态设置代理的指令:

  • 创建自定义上下文类(CustomContext),包含代理的风格
  • 定义动态指令函数,根据风格返回不同的指令
  • 随机选择风格(海口、海盗或机器人)并运行代理

agent_lifecycle_example.pylifecycle_example.py

这两个文件展示了代理生命周期的监控:

  • 定义自定义钩子类来监控代理的各种事件
  • 使用工具(如 random_numbermultiply_by_two)
  • 设置代理之间的交接逻辑(如果数字为奇数则交给乘法代理)
  • 监控和输出代理执行的完整生命周期

区别在于 agent_lifecycle_example.py 使用 AgentHooks 绑定到特定代理,而 lifecycle_example.py 使用 RunHooks 绑定到整个运行过程。

stream_items.pystream_text.py

展示了框架的流式输出功能:

  • stream_items.py 展示如何处理各种流式事件(工具调用、工具输出、消息输出等)
  • stream_text.py 展示如何直接流式输出文本内容

计算机控制:通过 ComputerToolAsyncComputer 接口,代理可以直接控制浏览器执行复杂的网页操作任务,这对于自动化网络交互、数据收集和UI测试非常有用。

向量搜索:通过 FileSearchTool,代理可以搜索预先准备的向量数据库,适用于文档检索、知识库问答等场景。

网络搜索:通过 WebSearchTool,代理可以直接搜索互联网获取实时信息,适合需要最新数据的场景。

演示

research_bot

web_search.py

Archon: AI代理构建AI!

Archon是一个创新的AI元代理系统,其核心理念是通过抓取各种框架的文档,来构建能够使用这些框架的AI代理。作为世界上第一个”Agenteer”(代理工程师),它能够自主构建、改进和优化其他AI代理。

Archon的核心是通过抓取各种框架的文档,用来构建能够使用这些框架的AI代理。

https://github.com/coleam00/Archon

优势

  • 多种部署选项:Docker容器或本地Python安装
  • 向量数据库支持:使用Supabase存储文档向量
  • 多种LLM支持:OpenAI/Anthropic/OpenRouter API或本地LLM(Ollama)

核心解读:Supabase

Supabase是一个开源的后端即服务(BaaS)平台,旨在简化应用程序开发过程。在Archon中,它主要用于存储和检索向量化的框架文档,为代理提供知识基础。

本地部署

Docker方式

git clone https://github.com/coleam00/archon.git
cd archon
python run_docker.py

部署完成后访问 http://localhost:8501

Python方式

git clone https://github.com/coleam00/archon.git
cd archon
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
streamlit run streamlit_ui.py

核心解读:IDE

AI IDE是集成了人工智能功能的开发环境,比如Windsurf、Cursor和Cline,可以提供代码补全、生成代码建议等智能功能。

部署环境

完成安装后,需要在Streamlit UI配置以下环境:

  1. 环境配置:设置API密钥和模型选择
  2. 数据库设置:配置Supabase向量数据库
  3. 文档抓取:爬取Pydantic AI文档,建立知识库
  4. 代理服务:启动生成代理的服务

核心解读:MCP

MCP是”Model Context Protocol”(模型上下文协议),这是一种允许AI IDE与外部AI服务通信的标准化协议。通过MCP配置,可以:

  • 在你喜欢的AI编辑器中工作
  • 直接从编辑器调用Archon功能
  • 让Archon为你生成代理代码,并直接集成到项目中

使用方法

完成所有配置后,可以:

  1. 转到聊天选项卡
  2. 描述你想要构建的代理
  3. Archon会规划并生成必要的代码

如果配置了MCP,还可以直接在AI IDE中使用Archon的功能,让Archon为你生成代理代码,并将其集成到你的项目中。

总结

Archon通过创新的文档抓取和向量化方法,展示了元学习在AI系统构建中的潜力。它不仅是一个实用的开发工具,也是一个展示智能代理系统演化的教育框架。随着其不断迭代完善,Archon有望成为AI代理开发生态系统的重要组成部分。