

Project Oscar负责处理开源项目贡献者所提出的问题,并于现有文档中找出相关问题的解答或解释
Google本周开源AI代理人项目Project Oscar,以用来协助维护拥有众多贡献者的开源项目,目前该项目的主要功能包括呈现项目脉络、以自然语言来控制既有的确定工具,以及分析报告与CLs/PRs。目前Project Oscar仍处实验性阶段,属于Go项目的子项目,尚不确定是否会成为独立项目。
Oscar与许多以大型语言模型(LLM)来协助开发的项目不同,它并不企图强化或取代撰写代码的进程,而是专注于处理贡献者所提出的问题,以及于现有的文档中找出相关问题的解答或解释。Google认为,毕竟撰写程序才是开发软件有趣的部分,Oscar则可协助处理相对不有趣的软件维护进程。
Google指出,开源项目的维护基本上就是人与人之间的自然语言交流,而这便是LLM最擅长的部分,同时,这些交流必须得到大量确定代码的支持,因此,Project Oscar便是结合了LLM与确定性代码。
在Project Oscar现有的3项功能中,第一个即是索引与呈现相关的项目脉络,让LLM担任项目搜索引擎的角色,向贡献者或维护者提供所有相关脉络并与之交互,不管是设计文档、API参考、博客、操作手册或是常见问题等;其次则是以自然语言来控制确定性的工具,因为它能追踪与纪录项目中各种工具的使用;最后则是分析问题报告及变更列表/拉取请求(CLs/PRs),以即时改善它们,另也会根据分析结果以替报告及CLs/PRs添增标签,并分配至适当路径或对象。
Project Oscar的首个原型为Gaby,藏身于Go问题追踪器中,以@gabyhelp的身分运行任务,迄今Gaby已索引来自GitHub的Go问题内容,以及go.dev的Go文档,并能以相关链接来回答各种新的问题,Google计划很快就会赋予Gaby新的Gerrit代码审查功能。
Gaby目前运作于本地端工作站,使用Google的GeminiLLM,Pebble文档系统,以及内存内的矢量数据库,但Google强调,Gaby的架构令它很容易就能在不同的代管服务上运作,使用任何的LLM,各种存储层,以及不同的矢量数据库。
未来Google仍会持续扩充Gaby的功能,有机会也会扩大Project Oscar以支持其它项目。