首页 > 其他分享 >大模型agent开发之文本向量化

大模型agent开发之文本向量化

时间:2024-10-11 19:49:14浏览次数:8  
标签:缓存 text self agent documents 量化 model 文本

文本向量化实现方式

 在复杂的大模型中文本向量化有很多好处,比如提高检索速度,在大规模数据集上向量通过相似表示可以快速找到相似文本,在处理长文本和跨语言对齐等任务上也可以减少很多开销。在langchain中可以从包langchain.embeddings.openai中可以引入方法OpenAIEmbeddings定义向量化方法,以下是向量化的demo。

class embedding_template:

    def __init__(self, text):
        self.text = text

    def document(self):
        # 定义一个embedding变量
        e_model = OpenAIEmbeddings()
        # embeddings = e_model.embed_documents(
        #     self.text
        # )
        # 新建一个缓存目录
        fs = LocalFileStore("./cache/")
        cached_embeddings = CacheBackedEmbeddings.from_bytes_store(
            e_model,
            fs,
            namespace=e_model.model
        )
        # 查看缓存条目
        print(list(fs.yield_keys()))
        # 加载文档,切分文档存储到缓存中
        # raw_document = TextLoader("./knowledge/economic.txt").load()
        text_splitter = CharacterTextSplitter(chunk_size=400, chunk_overlap=0)
        documents = text_splitter.split_documents(self.text)
        # 将向量写入缓存中
        FAISS.from_documents(documents, cached_embeddings)

通过参数传入长文本数据,并新建缓存目录,将长文本向量化为向量并将向量存储到缓存数据库中。

标签:缓存,text,self,agent,documents,量化,model,文本
From: https://www.cnblogs.com/Ethereal-hzc/p/18459088

相关文章

  • 自制免费小说推文辅助工具:免费的文本转语音软件(v1.0),如果没有免费的软件那就自己做一个
    近在研究Pyqt的使用,于是准备做一些小工具练手。本文为自研免费推文助手软件系列第1篇文章,后面会持续更新。一、目标功能1、文本转语音:生成音频文件(.mp3);(v1.0)2、文本转语音:生成字幕文件(.srt);(v2.0)3、文本处理:去除无效行(空行、纯数字行)、去除特殊字符串;(v2.0)4、API服务:......
  • 富文本编辑器wangEditor的基本使用
    首先,为大家献上原地址链接   wangEditor,如果要更深层的去使用,可以去看里面的高级功能,好的。不多说了,开始使用,项目还是老套的vue2,先去使用npm去下载编辑器yarnadd@wangeditor/editor#或者npminstall@wangeditor/editor--saveyarnadd@wangeditor/editor-for-v......
  • 调用Edge-tts文本朗读
    Edge_tts_sharp/Edge_tts_sharp/Edge_tts.csatmain·Entity-Now/Edge_tts_sharp·GitHub说明:不支持.netframework,支持.net8Edge_tts_sharpEdge_tts_sharp,是一个免费的C#库,调用MicrosoftEdgeTexttoSpeech接口生成音频。installNuGet\Install-PackageEdge_tts......
  • 从0手搓4种Agentic模式,主打去框架化!
    AgenticPatterns项目:包含AndrewNg在其DeepLearning.AI博客文章系列中定义的4种Agentic模式的从头实现,主打去框架化:没有LangChain,没有LangGraph,没有LlamaIndex,没有CrewAI。对LLMAPI调用纯粹而简单。反思模式:ReflectionPattern这是一个非常基本的模式,但尽管它很简......
  • 量化交易需要哪些编程技能,都有哪些优势?
    Python股票接口实现查询账户,提交订单,自动交易(1)Python股票程序交易接口查账,提交订单,自动交易(2)股票量化,Python炒股,CSDN交流社区>>>Python:量化交易的核心编程语言Python的基础优势Python在量化交易中犹如一把万能钥匙。它的简洁性使得即使是编程新手也能快速上手。对于......
  • 前端大模型入门:Langchain的不同文本分割器对比和效果展示-教你根据场景选出最合适的方
    在前端开发大模型应用的时候,处理和分割文本是常见需求,毕竟现在的大模型输入输出都有限-嵌入等也是有token限制的,合理的文本分割能显著提高模型的表现。Langchain提供了多种文本分割方式,本文将对比五种文本分割器:CharacterTextSplitter、RecursiveCharacterTextSplitter、Tok......
  • Java Deeplearning4j:实现文本分类
    ......
  • 转:C# 正则表达式提取指定文本内的内容
    C#正则表达式提取指定文本内的内容_c#正则表达式提取文本-CSDN博客///<summary>///截取字符串中开始和结束字符串中间的字符串///</summary>///<paramname="source">源字符串</param>///<paramname="startStr">开始字符串</param......
  • 如何使用Transformer模型处理金融文本数据?
    《DeepLearningforFinance》这本书主要介绍了如何使用深度学习技术,特别是机器学习和强化学习方法来处理金融数据,但并没有详细讨论Transformer模型在金融文本数据处理中的应用。不过,基于深度学习的一般知识以及Transformer模型的广泛用途,我们可以构建一个关于如何利用Tran......
  • Unity ML-Agents: 革新游戏AI开发的开源工具包
    ml-agentsUnityML-Agents:革新游戏AI开发的开源工具包UnityML-Agents(MachineLearningAgents)是UnityTechnologies推出的一个开源项目,旨在将游戏和模拟环境转变为训练智能代理的平台。这个工具包为游戏开发者和AI研究人员提供了一个强大而灵活的框架,使他们能够轻松地在Un......