数据学:对幻觉的LLM接地-Analytics Vidhya
介绍
大型语言模型正在迅速改变行业 - 迄今为止,它们为从银行业的个性化客户服务到全球沟通中的实时语言翻译提供了动力。他们可以用自然语言回答问题,总结信息,撰写论文,生成代码等等,使其在当今世界中具有无价的工具。但是,尽管它们具有许多优势,但他们还是遭受了一个被称为“幻觉”的关键缺陷。这些是模型生成似乎正确且现实的信息的情况,但要么部分或完全错误,由模型组成,并且缺乏现实世界中数据中的任何基础。因此,为了解决这个问题,Google开发了一个开放模型,一种称为Datagemma的工具,可将LLM与现实世界数据连接起来,并使用Google的数据CONSONS使用可信赖的来源来检查他们的响应。
学习成果
- 了解大语模型(LLM)及其应用的基础知识。
- 探索LLMS中幻觉的原因和类型。
- 了解Google的数据如何使用现实世界数据来解决LLM幻觉。
- 获得对先进技术的见解,例如检索相互交流(钻机)和检索增强发电(RAG)。
- 发现Google的数据共享如何提高LLM的事实准确性。
本文作为数据科学博客马拉松的一部分发表。
目录
- 了解大语言模型
- 了解Gemma的结构
- 在LLM的背景下,幻觉是什么?
- 什么是数据基因?
- 钻机:一种最小化LLM幻觉的混合方法
- 检索增强生成,以最大程度地减少LLM幻觉
- 为什么Datagemma很重要?
- 常见问题
了解大语言模型
大型语言模型是基础模型,对大量文本数据进行培训,参数范围从数百万到数十亿,可以理解和生成自然语言。它们建立在允许处理和生成自然语言的变压器体系结构上。可以使用自定义的数据集对特定域中的特定任务进行微调,以微调LLM模型。例如,像Bert这样的LLM模型可以在网络安全语料库上进行微调,以使用LLMS。一种流行的LLM模型自动化威胁情报,由OpenAi,Bert和Google撰写的GPT-4,由Google by Google,Meta by Meta,Claude,Claude by Anthropic等。
Gemma,Gemini和Bert的比较
芽 | 双子座 | 伯特 |
开发人员的轻量级模型 | 更大,更强大的会话人工智能 | NLP任务的预训练模型 |
适用于具有资源限制的应用程序,例如手机和边缘计算 | 无需资源限制的复杂任务的理想选择,例如大规模数据分析,复杂的AI应用程序。 | 诸如文本分类,问题回答,情感分析等任务的理想选择。 |
易于在有限的资源环境中部署 | 通常部署在云环境或具有丰富资源的数据中心中。 | 在本地或云环境中部署,但是较大的版本(例如Bert-Large)需要大量的计算资源 |
需要更少的计算资源 | 通常需要更多的计算资源。 | 诸如Bert-Base之类的较小型号可以部署在适度的硬件上,而诸如Bert-Large之类的较大型号可能需要更多的资源,但仍小于双子座。 |
了解Gemma的结构
Gemma的体系结构旨在无缝整合高级检索和发电技术,从而使系统能够智能访问外部数据源,同时产生准确,相干的响应,从而对各种AI驱动的应用程序非常有效。
Gemma基于变压器解码器体系结构:
Gemma和Gemma 2(2024年发布的最新版本)属于Google LLM型号的Gemma家族。它们可以通过定制任务进行微调。例如:编码模型是用于代码完成的微调Gemma模型。
在LLM的背景下,幻觉是什么?
LLMS中的幻觉是该模型自信地产生不准确,不一致或构成信息的输出,但对我们来说似乎是可信的。该模型幻觉是内容,并且内容实际上并非如此。例如:在法庭案件中,两名律师列举了Chatgpt提供的消息来源,这些消息人士原来是错误的。
AI幻觉可以是三种类型的
- 输入冲突幻觉:该模型生成了一个输出,该输出偏离了输入中用户提供的信息。
- 上下文相互矛盾的幻觉:在这里,模型产生的输出与先前生成的输出相矛盾。
- 事实冲突幻觉:模型产生了与现实世界知识或事实相矛盾的错误/不准确输出。
是什么引起幻觉?
- 有限的培训数据:当该模型尚未接受培训或对有限数据进行培训时,当它遇到与培训数据不同的提示时,即使它不完全理解新提示,它可能会根据其现有的培训数据产生数据,从而导致不准确性。
- 过于拟合:当提供了太多功能时,该模型将尝试捕获所有数据点而不了解基本模式,然后在培训数据上获得100%的准确性,但它不会在新数据上很好地概括。
如您所见,如果不进行事实检查,则使用幻觉的LLM内容可能是有害的。在事实准确性很重要并且不可能有任何错误信息的应用中,例如医疗建议或法律指导,幻觉可能会导致错误的信息,并可能严重后果。幻觉是像正确答案一样自信地传递的,因此用户很难识别它。同样,随着对AI的准确信息的依赖正在上升,幻觉可以减少对AI系统的信任,从而使LLM在高风险域中更难接受。
因此,模型开发人员需要解决此问题,并确保在涉及准确性和事实的情况下,LLM应产生正确的事实输出,以避免误解的传播。 Google已开发了一种解决AI幻觉的方法,以数据基因的形式开发出来。
什么是数据基因?
Datagemma是由Google开发的开放模型,该模型旨在将LLM与来自Google DataCommons的值得信任的,事实,现实世界中的数据联系起来。
Google Data Commons是一个开放存储库,将大量公共数据集结合到统一格式中,使访问和使用更容易。它结合了来自各种来源的数据,包括政府论文,研究组织和全球数据库。数据共享的主要目的是为各种数据集提供一个共同的框架,使用户可以在众多域中查询和分析结构化的现实世界数据,而无需昂贵的数据清洁或集成工作。
数据共享的关键特征
- 它包括有关人口统计学局,世界银行,NOAA等地方的人口,经济学,环境和医疗保健等各种主题的数据。
- 将数据组织成标准化的模式,因此用户可以轻松查询数据集,而无需处理不同数据格式和结构的复杂性。
- 开发人员可以通过API访问数据共享。
- 这是一项免费使用的公共服务,旨在使每个人都可以访问高质量,可靠的数据。
数据共享的重要性
- 研究人员可以使用数据共享来快速收集和分析大型结构化数据集,而无需手动来源和清洁数据。
- 大型语言模型(LLM),例如Google的Gemma,可以使用数据共享来引用现实世界中的数据,减少幻觉并提高其输出的事实准确性。
链接:建立自己的数据共享 - 数据共享
钻机:一种最小化LLM幻觉的混合方法
它是一种自然语言处理(NLP)的高级技术,结合了基于检索的基于检索的方法,以提高响应的质量和相关性。
这是关于钻机如何工作的简要说明:
- 基于检索的方法:这些方法涉及搜索大型既有响应或文档的大型数据库,以查找最相关的信息。这种方法可确保响应是准确的,并且基于实际数据。
- 基于生成的方法:这些方法使用模型根据输入从头开始生成响应。这样可以做出更灵活和创造性的响应,但有时可能导致不准确或幻觉。
- 交织:通过交错或结合检索和发电技术,钻机利用了两种方法的优势。系统检索相关信息,然后使用生成模型来完善和扩展,以确保准确性和创造力。
这在高质量,上下文相关的响应至关重要的应用程序中很有用,例如在对话AI,客户支持和内容创建中。
在Datagemma中,Gemma 2经过微调,以识别何时在生成输出时提取准确的信息。在此,它取代了输出中生成的数字,并从数据共享中获得了更精确的信息。因此,基本上,模型通过更具信任的来源对其输出进行了仔细检查。
钻机如何在数据基因中使用?
在Datagemma中,通过结合检索和生成模型的优势来确保生成的内容以可靠的数据基于来自数据共享的可靠数据,从而确保产生的内容基于数据共享,从而确保了检索相互交流的生成(RIG)以提高产出的准确性和相关性。
- 首先,用户向LLM模型提交查询。在我们的情况下,LLM模型是Datagemma,它基于具有27b参数的Gemma 2模型,用于钻机。
- Datagemma模型以自然语言查询的形式生成响应。这样做的目的是从数据Commons的自然语言接口中检索相关数据。
- 查询数据共享,并检索所需的数据。
- 生成最终响应并显示给用户。响应包括数据,源信息及其链接以及一些元数据。这取代了原始响应中潜在的不准确数字。
Google Colab上的逐步过程
现在让我们实施最小化幻觉的钻机。
先决条件:
- A100 GPU
- 高射线运行时间
- 拥抱脸象征
步骤1:登录到您的拥抱脸部帐户并创建一个新的令牌
单击此处登录拥抱面部帐户。
创建新令牌:
Step2:DataCommons API密钥
- 单击此处创建您的帐户。
- 创建一个新的应用程序以将数据共同集成。注册一个API键。
步骤3:启用数据共享NL API
转到您的COLAB笔记本秘密部分。创建新的秘密并启用笔记本访问。
- hf_token有价值作为您的拥抱脸代币
- dc_api_key,带有价值作为数据共享令牌
步骤4:安装所需库
让我们安装所需的库。
#安装以下所需库 ! ! #加载固定的GEMMA2 27B型号 导入火炬 导入data_gemma作为DG 从Google.Colab导入UserData 从变形金刚导入自动源,AutoModelforCausAllm,BitsandBytesConfig #初始化数据CONSONS API客户端 dc_api_key = userdata.get('dc_api_key') dc = dg.datacommons(api_key = dc_api_key) #从HuggingFace获取填充GEMMA2型号 hf_token = userdata.get('hf_token') nf4_config = bitsandbytesconfig( load_in_4bit = true, bnb_4bit_quant_type =“ nf4”, bnb_4bit_compute_dtype = torch.bfloat16 ) model_name ='Google/datagemma-rig-27b-it' tokenizer = autotokenizer.from_pretaining(model_name,token = hf_token) datagemma_model = automodelforcausallm.from_pretrated(model_name, device_map =“自动”, ventalization_config = nf4_config, TORCH_DTYPE = TORCH.BFLOAT16, token = hf_token) #构建LLM模型存根以用于钻机流量 datagemma_model_wrapper = dg.hfbasic(datagemma_model,tokenizer)
步骤5:选择或输入查询
在此步骤中,用户可以选择预定义的查询或输入自定义查询,从而使系统能够从数据源中检索相关信息以进行进一步处理。
步骤6:运行钻机技术并生成输出
在此步骤中,执行了钻机技术,结合了检索和生成方法,以基于输入查询生成精确且上下文相关的输出。
来自ipython.display导入降价 导入textWrap def display_chat(提示,文本): formatted_prompt =“ <font size="'1'颜色='brown'">?♂️ <blockquote>“提示” </blockquote> </font> “” text = text.replace('•',' *') text = textwrap.indent(text,'>',谓词= lambda _:true) formatted_text =“ <font size="'1'color">?\ n \ n“ text” \ n </font>“ 返回markdown(formatted_prompt formatted_text) def to_markDown(文本): text = text.replace('•',' *') 返回markdown(textwrap.indent(text,'>',predicate = lambda _:true)) ans = dg.rigflow(llm = datagemma_model_wrapper,data_fetcher = dc,verbose = false).query(query = query = query) Markdown(textwrap.indent(ans.answer(),'>',predicate = lambda _:true)) display_chat(query,ans.answer())
输出:(用于不同的查询)
结论: GEMMA2仅生成一个数值,而Datagemma则生成数值及其源信息,源链接,一些元数据和查询的结论。
资料来源:Google提供的Google COLAB笔记本
检索增强生成,以最大程度地减少LLM幻觉
检索增强生成是一种自然语言处理(NLP)和大语言模型(LLM)的方法,可以通过允许模型在生成过程中访问外部知识源来提高生成内容的事实准确性和相关性。它在LLM生成文本之前从数据共享中检索相关信息,为其响应提供了事实基础。
这是抹布如何工作的简要说明:
- 检索:当用户输入查询时,该模型会接收它,然后从其知识库或外部来源提取相关数据。
- 增强:然后,该外部信息用于“增强”(或增强)语言模型的输入上下文,从而帮助其产生更相关的响应。
- 一代: LLM根据原始查询和检索到的信息生成响应。
抹布如何在数据基因中使用?
在Datagemma中,通过从外部来源检索相关数据,然后生成将检索到的知识与AI生成的见解相结合的内容,从而确保高质量和上下文相关的输出,从而通过检索相关数据来提高响应准确性。
这是抹布的工作方式:
- 首先,用户向LLM模型提交查询。在我们的情况下,LLM模型是Datagemma,该模型基于具有27b参数的Gemma 2模型,用于抹布任务。
- Datagemma模型以自然语言查询的形式分析了输入查询后生成响应。这样做的目的是从数据Commons的自然语言接口中检索相关数据。
- 查询数据共享并检索所需的信息。
- 生成最终响应并显示给用户。这包括数据表,源信息及其链接以及一些元数据。这取代了原始响应中潜在的不准确数字。
- 此检索到的信息将添加到原始用户查询中,创建增强或增强的提示。
- 较大的LLM(在我们的情况下,Gemini 1.5 Pro)使用此增强的提示,包括检索到的数据,以产生更好,更准确和事实的响应。
Google Colab上的逐步过程
现在,我们将研究抹布的逐步步骤,以最大程度地减少幻觉。
先决条件:
- A100 GPU
- 高射线运行时间
- 拥抱脸象征
- 数据共享API令牌
- Gemini 1.5 Pro API密钥
步骤1:创建Gemini API密钥
转到Google AI Studioand创建Gemini API密钥。
步骤2:启用笔记本访问
转到您的Google Colab笔记本秘密部分,输入拥抱面,数据共享和Gemini 1.5 Pro API密钥。启用笔记本访问。
步骤3:安装所需的库
在此步骤中,您将安装必要的库,以实现钻机技术,并确保数据机系统的平稳操作。
#install库 ! ! #load微调gemma2 27b型号 导入火炬 导入data_gemma作为DG 从Google.Colab导入UserData 从变形金刚导入自动源,AutoModelforCausAllm,BitsandBytesConfig #初始化数据CONSONS API客户端 dc_api_key = userdata.get('dc_api_key') dc = dg.datacommons(api_key = dc_api_key) #获取双子座1.5 Pro模型 gemini_api_key = userdata.get('gemini_api_key') gemini_model = dg.googleaistudio(model ='gemini-1.5-pro',api_keys = [gemini_api_key]) #从HuggingFace获取填充GEMMA2型号 hf_token = userdata.get('hf_token') nf4_config = bitsandbytesconfig( load_in_4bit = true, bnb_4bit_quant_type =“ nf4”, bnb_4bit_compute_dtype = torch.bfloat16 ) model_name ='Google/datagemma-rag-27b-it' tokenizer = autotokenizer.from_pretaining(model_name,token = hf_token) datagemma_model = automodelforcausallm.from_pretrated(model_name, device_map =“自动”, ventalization_config = nf4_config, TORCH_DTYPE = TORCH.BFLOAT16, token = hf_token) #构建在抹布流中使用的LLM模型存根 datagemma_model_wrapper = dg.hfbasic(datagemma_model,tokenizer)
步骤4:选择或创建自己的查询
您将选择或创建一个自定义查询,该查询将用作钻机技术的输入,以检索并生成所需的输出。
步骤5:运行抹布并生成输出
现在,您将执行抹布系统以检索相关数据并根据您提供的查询生成最终输出。
来自ipython.display导入降价 导入textWrap def display_chat(提示,文本): formatted_prompt =“ <font size="'1'颜色='brown'">?♂️ <blockquote>“提示” </blockquote> </font> “” text = text.replace('•',' *') text = textwrap.indent(text,'>',谓词= lambda _:true) formatted_text =“ <font size="'1'color">?\ n \ n“ text” \ n </font>“ 返回markdown(formatted_prompt formatted_text) def to_markDown(文本): text = text.replace('•',' *') 返回markdown(textwrap.indent(text,'>',predicate = lambda _:true)) ans = dg.ragflow(llm_question = datagemma_model_wrapper,llm_answer = gemini_model,data_fetcher = dc).query(query = query = query) Markdown(textwrap.indent(ans.answer(),'>',predicate = lambda _:true)) display_chat(query,ans.answer())
输出:
结论:当询问查询时,检索了与查询相关的相关数据表,然后将此数据用于构成最终响应,并使用有意义的信息和见解。查询响应以及源链接,表和结论是作为输出而生成的。
链接:数据Gemma抹布
为什么Datagemma很重要?
Datagemma Grounds LLM在现实世界数据中输出,确保模型生成基于事实的响应。通过通过Google数据共享的验证数据来检查模型的响应,数据基因有助于减少错误或捏造的答案的数量。使用钻机和抹布方法,Google的研究人员观察到该模型产生的产出的准确性显着提高,尤其是在处理需要数值输出的查询时。
他们观察到,用户更喜欢由钻机和抹布生成的输出,而不是基线输出。这种方法可以减少AI幻觉,可以减少错误信息的产生。同样,由于Google已经制作了这种Gemma模型变体开放模型,因此开发人员和研究人员可以使用它来探索这种方法并进一步增强其,以实现使LLMS更加可靠和值得信赖的共同目标。
结论
LLM已成为整个行业的重要工具,但是它们“幻觉”的趋势(令人信服但不正确的信息)提出了一个重大问题。当Google的数据与Google数据共享的庞大现实世界数据结合使用时,可以解决此问题的解决方案。数据基因中的技术通过基于验证的统计数据来基于LLM输出来提高精度,尤其是使用数值信息。它也减少了错误信息。早期结果表明,该策略大大提高了AI响应的信誉,消费者更喜欢系统给出的事实产出。由于Datagemma是一个开放的模型,因此研究人员和开发人员可以利用它并改进它,从而使LLM更接近成为现实世界应用程序的可靠工具。协作可以帮助减少幻觉并提高信任度。
参考
- Datagemma:AI开放模型将LLMS连接到Google的数据共享(Blog.google)
- 在数据共享(Research.google)的一些帮助下,将AI接地在现实中
常见问题
问1。什么是基础模型?答:基础模型是一种大型机器学习模型,该模型对大量不同的数据进行了培训,从而使其能够跨越各种任务。 LLMS是一种基础模型,该模型接受了大量文本数据的培训。
问2。什么是AI幻觉?答:AI幻觉是指AI模型产生的信息似乎准确但不正确或捏造的现象。该模型产生的响应在实际数据或事实中缺乏基础。
Q3。为什么LLMS幻觉?A. LLMS幻觉是因为它们根据已训练的数据中的模式产生输出。当他们没有足够的上下文或相关数据来回答查询时,他们可能会根据现有知识库中发现的类似数据来构建合理的信息而不是承认不确定性。
问4。什么是Google Gemma?A. Google Gemma是基于Google Gemini的研究的Google的轻巧LLM模型。 Gemma的一种变体是Datagemma,它是开发的开放模型,可将LLM与Google数据共享中的现实世界统计数据连接起来。
问5。钻机和抹布有什么区别?A.钻机通过检查针对外部数据源(例如Google Data Commons)的响应,将现实世界统计数据直接集成到模型的输出中。因此,基本上会产生响应,然后通过外部来源对其进行事实检查。但是在抹布中,它从外部数据库或知识源检索相关信息,然后根据此信息产生响应。
本文所示的媒体不由Analytics Vidhya拥有,并由作者酌情使用。
以上是数据学:对幻觉的LLM接地-Analytics Vidhya的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

嘿,编码忍者!您当天计划哪些与编码有关的任务?在您进一步研究此博客之前,我希望您考虑所有与编码相关的困境,这是将其列出的。 完毕? - 让&#8217

介绍 Openai已根据备受期待的“草莓”建筑发布了其新模型。这种称为O1的创新模型增强了推理能力,使其可以通过问题进行思考

介绍 想象一下,穿过美术馆,周围是生动的绘画和雕塑。现在,如果您可以向每一部分提出一个问题并获得有意义的答案,该怎么办?您可能会问:“您在讲什么故事?

介绍 Mistral发布了其第一个多模式模型,即Pixtral-12b-2409。该模型建立在Mistral的120亿参数Nemo 12B之上。是什么设置了该模型?现在可以拍摄图像和Tex

SQL的Alter表语句:动态地将列添加到数据库 在数据管理中,SQL的适应性至关重要。 需要即时调整数据库结构吗? Alter表语句是您的解决方案。本指南的详细信息添加了Colu

陷入困境的基准:骆驼案例研究 2025年4月上旬,梅塔(Meta)揭开了Llama 4套件的模特套件,具有令人印象深刻的性能指标,使他们对GPT-4O和Claude 3.5 Sonnet等竞争对手有利地定位。伦斯的中心

在从事代理AI时,开发人员经常发现自己在速度,灵活性和资源效率之间进行权衡。我一直在探索代理AI框架,并遇到了Agno(以前是Phi-

视频游戏可以缓解焦虑,建立焦点或支持多动症的孩子吗? 随着医疗保健在全球范围内挑战,尤其是在青年中的挑战,创新者正在转向一种不太可能的工具:视频游戏。现在是世界上最大的娱乐印度河之一
