当前位置: 首页 > news >正文

能力市场换成数据库要改多少代码?regnexe-py 一个 Marketplace 搞定

「Regnexe Python 实战系列」第 6 篇(共 10 篇),对应仓库examples/readme/06_marketplace.py。上一篇:05. 改个 Skill 文案也要重新发版?with_directory 让插件目录直接生效。

一个容易被忽略的架构问题

很多 Agent Demo 的能力列表都是启动时手写进去的:

tools=[get_weather,search_docs,query_order]

这在 Demo 里没问题。但到了平台型应用,能力可能来自不同业务线、不同租户、不同环境。你迟早会问:能力到底应该存在代码里、数据库里,还是配置中心里?

regnexe-py 的答案是:Agent 不直接关心能力存在哪里,它只依赖 Marketplace 接口

默认实现:SimpleMarketplace

示例第一部分不跑 LLM,只演示市场的基本动作:安装、搜索、解析。

marketplace=SimpleMarketplace()marketplace.install(weather_plugin)candidates=marketplace.search("Check today's weather in Beijing")resolved=marketplace.resolve("weather-plugin.get_weather")

当前版本的search()很简单,主要是能力索引入口。以后你要按标签、关键词、向量召回优化,也是在这一层做。

自定义市场:假装背后是一张 DB 表

示例里写了一个InMemoryDbMarketplace

classInMemoryDbMarketplace(SimpleMarketplace):def__init__(self)->None:super().__init__()self.table:dict[str,PluginDescriptor]={}definstall(self,plugin:PluginDescriptor)->None:self.table[plugin.plugin_id]=pluginsuper().install(plugin)deffind_by_tag(self,tag:str)->list[PluginDescriptor]:return[pforpinself.table.values()ifany(tagincap.tagsforcapinp.capabilities)]

真实项目里,table可以换成 ORM、SQL 查询、配置中心或远程能力服务。

接入 Agent 不改主流程

换市场时,Agent 侧只改这一行:

agent=(RegnexeAgentBuilder().with_default_model(Vendor.DEEPSEEK,"deepseek-v4-flash").with_marketplace(marketplace).with_event_listener(ConsoleEventListener()).build())

这就是 Marketplace 的价值:能力管理怎么演进,不应该让 Agent 主流程跟着重写。

小结

Marketplace 解决的是能力治理问题:

  • 能力统一安装和查询
  • 能力 id 稳定可解析
  • 能力来源可以从内存换成数据库
  • 自定义查询方法可以服务管理后台
  • Agent 构建逻辑不被存储细节污染

一句话:能力市场不是一个列表,而是 Agent 应用的能力索引层


📌 上一篇:05. 改个 Skill 文案也要重新发版?with_directory 让插件目录直接生效 | 下一篇:07. Agent 记不住上下文?别再手写 history,先把 session_id 设计对
📌 项目地址:https://github.com/flower-trees/regnexe-py

http://www.jsqmd.com/news/1185927/

相关文章:

  • 答题卡自动识别系统:计算机视觉在教育领域的应用
  • 高品质大米哪家好? - 中媒介
  • useWallet() API全解析:掌握钱包状态管理与交易追踪
  • 新疆水上漂过滤器哪家效果好? - 中媒介
  • llama-nv-embed-reasoning-3b微调指南:如何为特定领域优化推理能力
  • Casbin GORM Adapter 深度解析:如何将权限策略存储到 MySQL/PostgreSQL/SQLite
  • Stable Diffusion实战:车内场景AI图像生成与提示词工程指南
  • 从<!DOCTYPE html>到‘use strict‘:构建现代Web的基石与护栏
  • 3步掌握网易云音乐NCM文件解密:免费工具实现跨平台音乐自由播放
  • 开源个人资产看板:用yFinance构建可审计的投资组合跟踪系统
  • 锻打工艺厨具哪家专业? - 中媒介
  • Mac视频预览增强终极指南:让Finder支持MKV等所有视频格式快速预览
  • 代码理解工具椎名立希:从意图解析到工程实践
  • SmartCharts vs 传统BI工具:为什么这款低代码平台能让技术人员效率飙升?[特殊字符]
  • SSD-PyTorch源码解析:理解MultiBoxLoss与NMS算法的实现细节
  • 《Java 100 天进阶之路》第56篇:死锁与排查工具(2026版)
  • 亲身探访长沙亨得利官方名表服务中心|官方电话及服务网点地址(2026年7月更新) - 亨得利官方博客
  • MAS-CN项目架构解析:开源Windows激活工具的代码实现原理
  • 海口净水器代理哪家好? - 中媒介
  • 从零到一:使用OpenCV级联分类器训练专属物体检测模型
  • Awesome-Prompt-Adapter-Learning-for-VLMs-CLIP项目概览:为什么这是VLM研究者的必备资源
  • 沈阳二手 LV 香奈儿出手避雷,合扬杜绝回收常见 “到手刀” 陷阱 - 开心测评
  • 社交网络分析实战:用Python构建可落地的关系决策地图
  • 高效R编程终极指南:如何让您的R代码运行速度提升10倍
  • 家庭游乐设备哪家专业? - 中媒介
  • Zeroth-01 Bot仿真到现实(Sim-to-Real)技术:原理与实现方法终极指南
  • 三步配置PotPlayer字幕翻译插件:免费实现外语视频无障碍观看终极指南
  • 三步实现Mac高效视频预览:QuickLook Video让Finder变身智能播放器
  • 仁怀别墅装修公司 - 中媒介
  • SmartCharts高级技巧:利用CRUD模板快速开发企业管理系统的实用指南