惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Schneier on Security
Schneier on Security
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Attack and Defense Labs
Attack and Defense Labs
H
Hacker News: Front Page
Google DeepMind News
Google DeepMind News
雷峰网
雷峰网
C
CXSECURITY Database RSS Feed - CXSecurity.com
Cisco Talos Blog
Cisco Talos Blog
T
Tenable Blog
G
Google Developers Blog
A
About on SuperTechFans
The Cloudflare Blog
S
Securelist
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
C
Cisco Blogs
H
Hackread – Cybersecurity News, Data Breaches, AI and More
aimingoo的专栏
aimingoo的专栏
云风的 BLOG
云风的 BLOG
Forbes - Security
Forbes - Security
腾讯CDC
Application and Cybersecurity Blog
Application and Cybersecurity Blog
V
Vulnerabilities – Threatpost
IT之家
IT之家
博客园_首页
P
Proofpoint News Feed
P
Privacy & Cybersecurity Law Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
Project Zero
Project Zero
月光博客
月光博客
NISL@THU
NISL@THU
爱范儿
爱范儿
S
Secure Thoughts
K
Kaspersky official blog
Security Latest
Security Latest
T
Tailwind CSS Blog
博客园 - Franky
D
Darknet – Hacking Tools, Hacker News & Cyber Security
TaoSecurity Blog
TaoSecurity Blog
The GitHub Blog
The GitHub Blog
Microsoft Azure Blog
Microsoft Azure Blog
B
Blog RSS Feed
S
SegmentFault 最新的问题
H
Help Net Security
T
Tor Project blog
L
LINUX DO - 热门话题
S
Security @ Cisco Blogs
N
News and Events Feed by Topic
O
OpenAI News
S
Schneier on Security

LINUX DO - 最新话题

谷歌云盘下载700g数据集,求方法 OpenAI推出了100美元的Pro订阅后,plus的Codex 5小时限额大幅缩水 之前买的super grok居然还没掉 关于CPA认证文件周限 佬们,默认CDK的要求是什么等级啊? 最新版本的微信群聊机器人方案 有没有人知道如何free号没有封,那么是否可以循环使用,因为我看主要是周限 L站改版了?吓我一跳,我以为我浏览器崩了 淘宝这种宽带可信吗,500兆移动宽带月费8元到2099年 docker内部应用访问宿主机mysql和redis时被拒绝connection refuse Erp全栈想转行做Ai有什么推荐的吗 boost有bug 佬们,有没有靠谱点的 Plus 购买渠道 大妈,狗妈用的 lg 服务有源头开源项目吗? 有人有能过验证码打码的嘛 上次帖里好像发过通过大模型来打码的 gpt plus 封号似乎也太快了点,一天就给封号了 按流量/token收费的国产官方AI推荐 我算是知道了为什么Oracle总是ABC了 佬友们帮我分析一下 ChatGPT Team账号只有一个人使用和4个席位邀请满了使用的总额度是一样的吗? gpt-free 10个带rt CPA反代claude是默认1m吗? 我终于敢说我做出来windows上tmux的替代了,目标windows/全平台最强的终端Ai编程工具 claude pro升级max,除了原来的$20,好像还能再领一次$100 关于AI agent的知识框架 独乐乐不如众乐乐,分享一下我的的AI对话程序 佬们自建网站支付问题是怎么解决的 怎么能让gpt模仿claude风格输出 codex free已经死了,下一个会是plus或者team吗 请问chatgpt pro里的fast模式,速度快了,降智吗 天才程序员想要复活,还有可用的codex公益站么 里斯本丸沉没照进现代了 [富可敌国] [一叶知秋API]友仔们 我们换域名了~~ 记得更新一下哦 有点莫名其妙,被阿里云警告了 从道观回家之前,我和师兄问道 【picpi 皮皮公益站】为了防止有人拿去卖,邀请码发放规则更新。 美国 FAA: 我们需要你,游戏玩家,来当空管吧 vibe时用文言省tok吗? 有没有用? 会降表现吗? Codex CLI 官方这个 imagegen 的 Skill 到底是干啥的?哪有对应工具啊? 求问关于尼区和美区开通Claude 换设备登录telegram国内号码老账号 需要收费咋办? 发现hotmail的额度特别耐用 最近还有能正常用的claude中转站吗? 避雷闲鱼上面的CC中转站 现在cursor的优势是什么呢? OpenAI 回应马斯克要求罢免奥尔特曼:搞法律突袭,扰乱诉讼 谁在吹opencode go套餐啊,又慢量又少 【SamAltman】奥特曼被燃烧瓶袭击后的回应 咸鱼上359买的claude MAX 5x ,美国假家宽,看看能活几天 想问问跳蚤市场开的Pro和Plus 虚拟卡链接求助 [开源插件] 做了一个适合科研佬的GPT插件 【AI小说】拿AI跑了一部小说,佬们看看质量怎么样 总是能在首页看到opus4.6鞭尸推送 这个别名邮箱可以注册gpt 一个人在外地的话,佬们周末都做什么 你们ddg还能行不 获取不到新的邮箱 了····· claude code修复codex windows升级0.120.0 无法打开问题 我现在Zeabur上搭建了CPA服务,怎么再接入new api来做分发 杭州有么有佬友在搞AI应用这块的,四年前端转AI开发 汇丰、渣打两家银行获得香港稳定币牌照 【开源推广】 AIUsage:聚合多个 AI 平台配额与用量的 高颜值 macOS端 CPA看板 APP Newapi吃服务器内存多吗 中行跨境通疑限制无卡连续交易 或为应对盗刷 突然不能用表情回应话题了 codex是不是降额度了 反馈关于 “快问快答”标签的乱象 opencode版本1.4.3 无法上传图片问题 想问一下怎么解决这个问题,就是终端太多? codex更新到0.120.0之后无法加载以前的会话 sub2api怎么部署? 分享一个自用的南京继续教育平台视频自动播放下一集的油猴脚本 zotero9出来了 Claude正在向我推销付费项目,那能让你轻易得逞嘛 甲骨文用脚本开出来4个2+12咋办啊佬们,我还是免费号 各个厂的coding plan lite都绝版了? claude code 20美金账户问题 联通元景套餐续费问题 ai时代下的一些思考(诚邀大家讨论) 出境易GPT订阅pro求助 今年到目前股市的操作。 刚收到短信之前跑路的那家可以兑换了 佬们都用境外服务器做什么呢? 甲骨文4+24 求助领pro时候报错-付款页面出错。请重试。如果问题依然存在,请访问help.openai.com。 cloudflare 浏览器渲染增加了 CDP与mcp支持 SUB2API 导入 rt 时报错显示 Request failed with status code 502 如何解决 讨论一下怎么整理笔记 codex0.120.0更新后无法启动,回退 0.119.0正常使用 冰佬的公益站也不行了吗 三角洲直接给我封了10年 有佬友知道怎么起诉么 88VIP邀请 经过排查大概确定反重力代理报错问题了 【求助】openrouter 今年4月用国内visa卡充值后导致封禁,无法使用外国模型 奥特曼家被炸 自用,高信息量回复收集 求助sub2api分组问题 【新人报道】注册成功了 分享100个codex free账号 招聘 深圳客户端开发(flutter) 20k+
我们一起学Agent!(第二期)
Bin · 2026-04-28 · via LINUX DO - 最新话题
从 【Agent笔记】我们一起来学习Agent!(第1期) 继续讨论;我第一期的时候就是想记录一下,因为我在开发agent项目。没想到佬们那么欢迎,我真的诚惶诚恐。 然后这个月实在太忙了:上半月一直在做自己的项目,希望拿到一些投资。前两天刚郴州旅游回来,然后手上两个团队项目在做,而gpt plus眼看着过期了,我就想是时候提高自己的提示词技术和相关知识了————所以也很忙。 今天本来打算写多点的,但是我想还是留到下一期————**我保证这会很快的!就这个星期!**因为今晚有小姐姐叫我打游戏了,休息一波 佬我准备买个coding plan了,50左右推荐一个呗,就那种玩具的,我经常需要写一个玩具项目,要求有GLM5左右的水平就可以,主要是周量够,业余开发。没有的话我打算买kimi那个80的了,老板还给我配了gpt plus就不用在自己项目了。 正文开始: 我们一起学Agent!(第二期) Context(上下文) 定义:Agent在每次执行任务时能够获得的外部信息。一个agent的质量很大程度上取决于它能访问到的上下文——即使系统提示写得再完美,缺少正确的上下文(背景,语境,解决问题需要的信息)也会导致结果不佳。 在agno中,提供了三种原生方式进行context的提供 Knowledge(知识库) 我们需要预先做两个事情,第一建立对象绑定数据库,第二建好知识库 创建一个 Knowledge 对象,绑定一个向量数据库(如 PgVector)。 将内容从本地文件、URL 等添加到知识库中(自动分块、生成 embedding)。 调用方式如下: from agno.agent import Agent from agno.knowledge import Knowledge from agno.vector_db.pgvector import PgVector agent = Agent( model=..., knowledge=Knowledge( vector_db=PgVector(table_name="my_kb", db_url="postgresql://...") ), search_knowledge=True, # 提供工具 add_knowledge_to_context=True, # 自动注入 ) agent.knowledge.add_content_from_path("docs/") 可以看到,Agent 通过两种方式使用知识库: add_knowledge_to_context=True :每次运行前自动搜索相关知识,并注入到提示词中(传统 RAG)。 search_knowledge=True :为 Agent 提供一个 search_knowledge_base(query) 工具,由 Agent 自主决定何时搜索(Agentic RAG)。 后者是目前我认为比较好的方向,前者是几年前流行的;因为模型的agent能力已经大幅上升,query的多,query的好。 Dependencies(依赖项) 看到这个词我双眼一黑,不过其实也还好; 定义:短暂、请求级别的动态值,不适合放在知识库中:如特性开关、租户 ID、每个请求的数据库连接、调用方专属的 API Key 等。 简单的说,就是“程序运行时动态捕捉的数据,主动注入给 Agent”。 你在写代码时,可以“捕捉”到很多东西: Web 框架中,从请求头捕捉 user_id 浏览器插件中,捕捉当前选中的文字 window.getSelection() 调试工具中,捕捉你设置的 --debug 命令行参数 定时任务中,捕捉当前时间 datetime.now() 比如说你写了一个浏览器插件agent,其中有程序可以捕捉用户在浏览器中的历史选中,程序发现用户在浏览中选中了`英伟达` `微软`这些词汇,那么当用户和你的agent对话时候,它们就会被注入;agent就会意识到用户似乎对这两个公司感兴趣; 同样的,那些用户的ip地址,ID,APIKEY,也是程序捕捉,注入到agent之中。 实现方式 在创建 Agent 时传入一个 dependencies 字典,可包含任意结构的数据。 设置 add_dependencies_to_context=True 后,这些依赖会被自动注入到系统提示词中。 工具函数如果需要访问依赖,可以声明一个 RunContext 参数,通过 run_context.dependencies 读取。 代码如下: from agno.agent import Agent from agno.run import RunContext from agno.tools import tool @tool def get_config(run_context: RunContext, key: str) -> str: return str(run_context.dependencies["config"].get(key)) agent = Agent( model=..., dependencies={ "config": {"region": "us-east-1", "max_retries": 3}, "feature_flags": {"beta_search": True}, }, add_dependencies_to_context=True, tools=[get_config], ) # 也可以在单次运行时覆盖依赖 agent.run("我的区域是哪里?", dependencies={"region": "eu-west-1"}) 讲完了这些,我们就了解了两种常见的上下文注入,其实这两者都很简单。一个就是用知识库的方式,一个就是用程序自动注入的方式。 那如果我们需要的上下文比较复杂,不能通过简单查询,就马上得到。比如你需要agent知道今天公司的工作某个任务的进度情况,得同时操作 Slack、GitHub、Google Drive、公司数据库才能得到“这个任务进行到什么程度了”这个上下文。(注意,上下文不是你的目的,你的目的可能更大,需要决策明天的公司加班与否) 而当你定义工具,接入查询工具和其他工具,可能每个系统有 8~15 个 API(发送消息、搜索频道、创建 PR、列出文件、执行 SQL…) 如果你把所有工具直接塞给主 Agent,系统提示词里会塞满 50+ 个工具的描述和参数。 后果:模型会混乱、选错工具、调用参数错误、甚至“幻觉”出不存在的工具。 所以必须引入子agent来做上下文的查询,我们不需要主agent知道那么多细节,只需要子agent去根据问题调查得到上下文,。对于这种子agent,agno提供了context provider来管理。 Context Provider 定义:Context Provider 是一个“子 Agent 包装器”,它把整个外部系统(如 Slack、GitHub、数据库)封装成一个只有两个工具的接口: query_<id> 和 update_<id> ,供主 Agent 调用。 它就是子agent创建。 不着急实现,我们理解一下原理: 现在主agent希望获取上下文,需要查询两个地方的信息,还有更新数据库(更新在这里也视为一种信息),流程就会如下: 主 Agent │ ┌──────────────┼──────────────┐ │ │ │ query_slack query_github update_database │ │ │ ┌────▼────┐ ┌─────▼─────┐ ┌────▼────┐ │Slack │ │GitHub │ │Database│ │子 Agent │ │子 Agent │ │子 Agent│ └────┬────┘ └─────┬─────┘ └────┬────┘ ┌────▼────┐ ┌─────▼─────┐ ┌────▼────┐ │Slack API│ │GitHub API │ │SQL DB │ └─────────┘ └───────────┘ └─────────┘ agno提供了一些内置的provider,直接拥有一些工具 最简单的例子:让 Agent 读取你电脑上的本地文件 from agno.agent import Agent from agno.context.filesystem import FilesystemContextProvider # 创建一个 Provider,指定要暴露的根目录 fs = FilesystemContextProvider(id="docs", root="./my_documents") agent = Agent( model=..., tools=fs.get_tools(), # 只有一个工具:query_docs ) agent.run("帮我找一下 ./my_documents 里有没有关于预算的文档") Agent 内部会调用 query_docs ,传给子 Agent,子 Agent 会遍历目录、读取文件、回答。 基本实现: from agno.agent import Agent from agno.context.slack import SlackContextProvider from agno.context.web import WebContextProvider, ExaBackend # 1. 创建 Provider 实例 slack = SlackContextProvider(id="team_chat") # id 会成为工具名的一部分 web = WebContextProvider(backend=ExaBackend(), id="web") # 2. 将工具合并给主 Agent agent = Agent( model=..., tools=[*slack.get_tools(), *web.get_tools()], # 还可以把 Provider 自带的 instructions 合并进去 instructions="\n".join([slack.instructions(), web.instructions()]), ) # 3. 运行 agent.run("最近 Slack 里有人问过 Web 搜索吗?") # 主 Agent 会调用 query_team_chat 获取 Slack 内容,然后可能再调用 query_web 补充信息。 子agent我们自己也可以写,为什么要用provider 是的,子agent我们分分钟也可以写,不同的是,provider需要遵守contextprovider这个类的写法: 我认为最大的好处还是统一,这个子agent的工具会自动命名,如`query_<provider_name>`,后续导出文档也很简单。劣势在于不自由,如果你的子agent很灵活,实现的功能不附属于主agent,那么就自便。 实现 暂时没有灵感,有灵感补上,或者评论来个佬友梦想一个小agent需求呗,我们来试试。 我现在学了这些东西,但是我觉得很多东西对我好像没有用武之地,所以我也经常在现实中思考,到底我们怎么做才能把agent落到我们生活的困难解决中去。 1 个帖子 - 1 位参与者 阅读完整话题