技术标签: 语言模型 GitCode 人工智能 RAG 开源 gitcode
GitCode AI开源搜索 是面开发者的 AI 开源搜索工具,目的是为了帮助开发者快速寻找开源项目代码、解决开发问题和快速寻找答案,帮助开发者提升效率的同时利用代码仓托管能力建立自己个人知识库。
说到AI搜索引擎,首先要区分下传统的搜索能力和AI搜索能力。
随着大模型的迅速发展,各个搜索引擎都接入了模型搜索能力,如百度的文心一言和必应的ChatGPT等等,但语言模型不知道训练集之外的知识(例如搜索数据、行业的 knowledge ),因此引入了RAG框架。
Retrieval Augmented Generation (检索增强生成),能让语言模型使用外部知识( external knowledge )进行生成,我们可以把要让模型理解的新知识通过 prompt 的方式给到模型。
RAG 框架是由 3 个部分组成的:
通过下面示例可看到RAG框架的两个效果:
显然,在开发者领域通过RAG知识加入后,GitCode的答案是用户想得到的。
2)kafka是什么?
显然,GitCode AI能够在kafka开源项目的知识内容加持下回答的结果更全面,包括kafka的代码展示等等
3) GitCode是什么?
这类有实效性或者内部知识的案例,在RAG知识外挂的模式下可以让语言模型准确的回答用户。
上述三个例子和生成效果充分的印证了RAG框架下的大模型问答效果。
通常通过以下4个指标来评估效果:
指标 | 定义 |
---|---|
fluency | 流畅性,生成的文本是否流畅连贯 |
perceived utility | 实用性,生成的内容是否有用 |
citation recall | 引文召回率,所生成的内容完全得到引文支持的比例 |
citation precision | 引文精度,引文中支持生成内容的比例 |
GitCode AI开源搜面向开发者快速解决问题为初衷设计,因此产品特性中包括:
另外,GitCode AI搜索对未登录用户开放,核心目的是为了快速帮助开发者解决问题和提升效率。
AI问答
搜索记录
登录用户可以在搜索记录中快速寻找之前搜索的问题和答案
相关问题
用户提出问题后会生成5个相关问题,可以快速点击后连续提问,帮助用户解决问题。
个人知识库
用户可以通过个人知识库收集、整理和连接自己的知识碎片,并基于开源大模型构建个性化的知识体系,提升工作、学习效率和效果。建立个人知识体系的同时,后续可只在个人知识库内搜索,返回结果更准确。
开源项目
开源项目中包括项目快速下载、快速启动命令展示和发行版等信息。
规划 | 内容 |
---|---|
个人知识库建设 | 可导入CSDN收藏夹内容和浏览器收藏内容,建立完整个人知识仓库 |
个人专属AI搜索 | 在个人知识库中检索,依然是RAG+大模型能,建立个人专属AI搜索能力 |
开源项目AI能力增强 | 能够在单项目下检索和建立AI搜索能力 |
文章浏览阅读2.8k次。AndroidStudio 升级到 4.2.2 版本后,没有代码高亮了,很蛋疼。解决办法是:点开上方的 File,先勾选 Power Save Mode 再取消就可以了。_android studio 高亮
文章浏览阅读1k次。使用swift4.0整合Unity出现[ valueForUndefinedKey:]: this class is not key value coding-compliant for the key unity.'在对应属性前加@objc 即可。或者调回swift3.2版本_forundefinedkey swift4
文章浏览阅读1.3k次。http auto-config="true" access-denied-page="/common/403.htm"> intercept-url pattern="/login.**" access="IS_AUTHENTICATED_ANONYMOUSLY"/> form-login login-page="/login.jsp" defau_springsecurity 设置cookie失效时间
文章浏览阅读1.1k次。继上篇内部拦截法需求还是跟上篇一样。只不过这次用外部拦截法来解决;只要在父容器添加如下代码就可以解决了滑动冲突,很简单,套模板就行 // 分别记录上次滑动的坐标(onInterceptTouchEvent) private int mLastXIntercept = 0; private int mLastYIntercept = 0; @Override public bo_viewpage2外部拦截事件
文章浏览阅读2.5k次,点赞7次,收藏9次。本文章系作者原创,未经许可,不得转载。汇编 堆栈 变量存储 指针先说栈的概念,栈其实也是一种。。。。。先说内存的概念吧。。。。。额 先说计算机吧,简单来说的话,可以把计算机理解成由CPU,内存,硬盘组成,而CPU内部又包括一种叫做内部寄存器的东西,包括 数据寄存器: AX,BX,CX,DX; 段寄存器: CS,DS,ES,SS; 指针与变址寄存器SP,BP,SI,DI; ..._汇编语言栈指针
文章浏览阅读1w次,点赞14次,收藏56次。转载自 架构师之路:从码农到架构师你差了哪些 Web应用,最常见的研发语言是Java和PHP。 后端服务,最常见的研发语言是Java和C/C++。 大数据,最常见的研发语言是Java和Python。 可以说,Java是现阶段中国互联网公司中,覆盖度最广的研发语言,掌握了Java技术体系,不管在成熟的大公司,快速发展的公司,还是创业阶段的公司,都能有立足之地。有..._web架构师
文章浏览阅读7.3k次,点赞6次,收藏36次。超级简单的Python爬虫入门教程(非常详细),通俗易懂,看一遍就会了_爬虫python入门
文章浏览阅读1.2k次。您的代码存在一些问题。首先,您在此处显示的两个模型是not等效的:尽管您将scikit-learn LogisticRegression设置为fit_intercept=True(这是默认设置),但您并没有这样做statsmodels一;来自statsmodels docs:默认情况下不包括拦截器,用户应添加。参见statsmodels.tools.add_constant。另一个问题是,尽管您处..._sm fit(method
文章浏览阅读518次。一、sfml官网下载32位的版本 一样的设置,64位的版本我没有成功,用不了。二、三、四以下这些内容拷贝过去:sfml-graphics-d.libsfml-window-d.libsfml-system-d.libsfml-audio-d.lib..._vsllfqm
文章浏览阅读2.7k次。由于工作需要,要做一个类似bc2的文本比较工具,用红色字体标明不同的地方,研究了半天,自己写了一个简易版的。文本比较的规则是1.先比较文本的行数,2.再比较对应行的字符串的长度3.再比较每一个字符串是否相同。具体代码如下:其中m_basestr和m_mergestr里面存放是待比较的字符串int basecount=m_basestr.GetLength(); int mergec_byoned compare 字符串比较算法
文章浏览阅读79次。xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/maven-v4_0_0.xsd">org.apacheapache174.0.0org.apache.atlasapache-atlas3.0.0-SNAPSHOTMetadata Management and Data Govern..._atlas.pom
文章浏览阅读1.5k次。C语言中有可以产生随机数据的函数,需要添加 stdlib. h头文件与time.h头文件。首先在main函数开头加上“ srand(unsigned)time(NULL));",这个语句将生成随机数的种子(不懂也没关系,只要记住这个语句,并且知道 srand是初始化随机种子用的即可)。然后,在需要使用随机数的地方使用 rand()函数。下面是一段生成十个随机数的代码:程序代码:#incl..._随机数