钢铁网站建设初衷专业外贸公司网站

张小明 2026/1/9 22:22:50
钢铁网站建设初衷,专业外贸公司网站,sem是什么的英文缩写,创业合伙人招募平台本文详细介绍大模型应用开发三种模式#xff1a;提示工程(优化输入)、RAG(检索增强生成)和微调(参数调整)。重点解析RAG技术原理#xff0c;通过外部知识库检索提高回答准确性和时效性#xff0c;减少幻觉问题。提供DeepSeekFaiss搭建本地知识库的实战代码#xff0c;以及查…本文详细介绍大模型应用开发三种模式提示工程(优化输入)、RAG(检索增强生成)和微调(参数调整)。重点解析RAG技术原理通过外部知识库检索提高回答准确性和时效性减少幻觉问题。提供DeepSeekFaiss搭建本地知识库的实战代码以及查询改写和联网搜索等优化技术帮助开发者构建高效可靠的大模型应用。一、大模型应用开发的三种模式提示工程Prompt Engineering、RAG检索增强生成和微调Fine-tuning分别代表了不同维度的优化手段。提示工程 (Prompt Engineering)不改变模型通过优化输入Prompt来引导输出。一般用于快速原型开发需要立即看到效果。通用任务总结、翻译、改写、简单的逻辑推理。改变语气或格式如“请以专业律师的口吻回复”或“输出 JSON 格式”。预算极低几乎没有额外成本。RAG (检索增强生成)在模型回答前先去外部数据库如公司文档、实时新闻检索相关知识再把知识喂给模型。一般用于需要准确的事实需要模型回答特定的、私有的或最新的信息如“我公司去年的差旅报销规定”。知识库频繁更新数据每天甚至每小时都在变微调无法跟上这种速度。需要引用来源用户需要知道答案是从哪篇文档里找出来的减少“幻觉”。长文本处理数据量巨大超出了单个提示词的长度限制。微调 (Fine-tuning)使用特定领域的数据集对模型进行二次训练改变其内部参数权重。一般用于特定的行为/风格习惯你需要模型极度符合某种特定风格如模仿某个作家的文风。极度专业的术语模型在理解特定垂直领域如病理学影像报告、底层代码库的特殊表达时表现不佳。为了降本增效通过微调一个小模型如 Llama-3-8B使其表现接近大模型如 GPT-4从而降低推理成本和延迟。遵循复杂指令当提示工程无法让模型稳定遵循某些及其复杂的输出规则时。二、RAG的核心原理与流程1、什么是RAGRAG (Retrieval-Augmented Generation检索增强生成) 是目前大模型应用中最火热的技术架构之一。RAG是一种结合信息检索Retrieval和文本生 成Generation的技术RAG技术通过实时检索相关文档或信息并将其作为上下文输入到生成模型中从而提高生成结果的时效性和准确性。简单来说RAG 就是给大模型配了一个“外部知识库”。当用户提问时系统先去知识库里查资料把查到的资料和问题一起喂给模型让模型参考这些资料来回答。RAG的优势解决知识时效性问题大模型的训练数据通常是静态的无法涵盖最新信息而RAG可以检索外部知识库实时更新信息。减少模型幻觉通过引入外部知识RAG能够减少模型生成虚假或不准确内容的可能性。提升专业领域回答质量RAG能够结合垂直领域的专业知识 库生成更具专业深度的回答。2、RAG的核心原理与流程RAG 的核心思想是将检索Retrieval能力与生成Generation能力结合。传统生成 (LLM Only) 靠模型脑子里记的知识回答闭卷考试。如果知识点没学过或记错了就会胡说八道幻觉。RAG 生成 先找资料再根据资料组织语言回答开卷考试。这样回答更准确且能通过引文溯源。一个完整的 RAG 流程通常分为两个阶段数据准备阶段离线和检索生成阶段在线。第一阶段数据准备文档加载 (Load)读取各种格式的私人文档PDF、Word、Markdown、数据库等。文本切割 (Split/Chunking)将长文章切成一小块一小块的“语义片段”比如每段 500 字因为模型的输入窗口有限。向量化 (Embedding)利用Embedding 模型将这些文字片段转化成一串数字向量。这些数字代表了文字的“语义含义”。存入向量数据库 (Store)将这些向量存入专门的向量数据库如 Milvus, Pinecone, FAISS 等。第二阶段检索与生成这是当用户输入问题后的实时处理过程问题向量化把用户的提问比如“公司出差报销标准是什么”也转化成向量。语义检索 (Retrieve)在向量数据库中进行“相似度搜索”找出与问题语义最接近的几个文档片段Top-K。提示词增强 (Augment)将“用户问题”和“搜到的片段”塞进一个模板里。 *模板示例“请参考以下背景资料资料A回答用户的问题[用户问题]。如果资料中没有提到请回答不知道。”模型生成 (Generate)大模型阅读这些“背景资料”生成一个准确且有据可依的回答。RAG 流程图解用户问题➔向量化➔去数据库捞资料➔问题资料组合➔大模型➔最终答案3、RAG的核心优势与局限性核心优势解决“幻觉”问题模型必须参考给定的资料回答大大降低了瞎编的概率。知识实时性不需要重新训练模型。只要把最新的新闻或文档存入数据库模型立刻就能掌握新知识。私有数据安全企业不需要把敏感数据传给云端模型进行微调只需在本地检索后将相关片段传给模型。可解释性模型的回答可以标注出处例如“根据《2023年财务手册》第三章…”方便人工核对。虽然 RAG 很强但也有挑战检索质量如果搜出来的片段本身就不相关模型就会被带偏。上下文长度如果需要参考的资料太多超出了模型的处理能力效果会打折。三、DeepSeek Faiss搭建本地知识库检索该系统的核心逻辑是将文档向量化并存入 Faiss查询时通过相似度匹配找出相关内容最后交给 DeepSeek 进行总结回答。技术栈选择向量数据库Faiss作为高效的向量检索嵌入模型阿里云DashScope的text-embedding-v1大语言模型deepseek-v3文档处理PyPDF2用于PDF文本提取1、环境准备首先安装必要的 Python 库pip install dashscope faiss-cpu PyPDF2 openai numpy langchain_community2、核心代码实现整个流程分为文档预处理PDF文本提取、文本分割、页码映射处理→知识库构建向量数据库构建、数据持久化→问答查询相似度检索、问答链处理、答案生成与展示from PyPDF2 import PdfReader from langchain_text_splitters import RecursiveCharacterTextSplitter from langchain_community.embeddings import DashScopeEmbeddings from langchain_community.vectorstores import FAISS from typing import List, Tuple import os import pickle DASHSCOPE_API_KEY os.getenv(DASHSCOPE_API_KEY) if not DASHSCOPE_API_KEY: raise ValueError(请设置环境变量 DASHSCOPE_API_KEY) def extract_text_with_page_numbers(pdf) - Tuple[str, List[Tuple[str, int]]]: 从PDF中提取文本并记录每个字符对应的页码 参数: pdf: PDF文件对象 返回: text: 提取的文本内容 char_page_mapping: 每个字符对应的页码列表 text char_page_mapping [] for page_number, page in enumerate(pdf.pages, start1): extracted_text page.extract_text() if extracted_text: text extracted_text # 为当前页面的每个字符记录页码 char_page_mapping.extend([page_number] * len(extracted_text)) else: print(fNo text found on page {page_number}.) return text, char_page_mapping def process_text_with_splitter(text: str, char_page_mapping: List[int], save_path: str None) - FAISS: 处理文本并创建向量存储 参数: text: 提取的文本内容 char_page_mapping: 每个字符对应的页码列表 save_path: 可选保存向量数据库的路径 返回: knowledgeBase: 基于FAISS的向量存储对象 # 创建文本分割器用于将长文本分割成小块 text_splitter RecursiveCharacterTextSplitter( separators[\n\n, \n, ., , ], chunk_size1000, chunk_overlap200, length_functionlen, ) # 分割文本 chunks text_splitter.split_text(text) print(f文本被分割成 {len(chunks)} 个块。) # 创建嵌入模型 embeddings DashScopeEmbeddings( modeltext-embedding-v1, dashscope_api_keyDASHSCOPE_API_KEY, ) # 从文本块创建知识库 knowledgeBase FAISS.from_texts(chunks, embeddings) print(已从文本块创建知识库。) # 为每个文本块找到对应的页码信息 page_info {} current_pos 0 for chunk in chunks: chunk_start current_pos chunk_end current_pos len(chunk) # 找到这个文本块中字符对应的页码 chunk_pages char_page_mapping[chunk_start:chunk_end] # 取页码的众数出现最多的页码作为该块的页码 if chunk_pages: # 统计每个页码出现的次数 page_counts {} for page in chunk_pages: page_counts[page] page_counts.get(page, 0) 1 # 找到出现次数最多的页码 most_common_page max(page_counts, keypage_counts.get) page_info[chunk] most_common_page else: page_info[chunk] 1 # 默认页码 current_pos chunk_end knowledgeBase.page_info page_info print(f页码映射完成共 {len(page_info)} 个文本块) # 如果提供了保存路径则保存向量数据库和页码信息 if save_path: # 确保目录存在 os.makedirs(save_path, exist_okTrue) # 保存FAISS向量数据库 knowledgeBase.save_local(save_path) print(f向量数据库已保存到: {save_path}) # 保存页码信息到同一目录 with open(os.path.join(save_path, page_info.pkl), wb) as f: pickle.dump(page_info, f) print(f页码信息已保存到: {os.path.join(save_path, page_info.pkl)}) return knowledgeBase def load_knowledge_base(load_path: str, embeddings None) - FAISS: 从磁盘加载向量数据库和页码信息 参数: load_path: 向量数据库的保存路径 embeddings: 可选嵌入模型。如果为None将创建一个新的DashScopeEmbeddings实例 返回: knowledgeBase: 加载的FAISS向量数据库对象 # 如果没有提供嵌入模型则创建一个新的 if embeddings is None: embeddings DashScopeEmbeddings( modeltext-embedding-v1, dashscope_api_keyDASHSCOPE_API_KEY, ) # 加载FAISS向量数据库添加allow_dangerous_deserializationTrue参数以允许反序列化 knowledgeBase FAISS.load_local(load_path, embeddings, allow_dangerous_deserializationTrue) print(f向量数据库已从 {load_path} 加载。) # 加载页码信息 page_info_path os.path.join(load_path, page_info.pkl) if os.path.exists(page_info_path): with open(page_info_path, rb) as f: page_info pickle.load(f) knowledgeBase.page_info page_info print(页码信息已加载。) else: print(警告: 未找到页码信息文件。) return knowledgeBase # 读取PDF文件 pdf_reader PdfReader(./浦发上海浦东发展银行西安分行个金客户经理考核办法.pdf) # 提取文本和页码信息 text, char_page_mapping extract_text_with_page_numbers(pdf_reader) print(f提取的文本长度: {len(text)} 个字符。) # 处理文本并创建知识库同时保存到磁盘 save_dir ./vector_db knowledgeBase process_text_with_splitter(text, char_page_mapping, save_pathsave_dir) # 示例如何加载已保存的向量数据库 from langchain_community.llms import Tongyi llm Tongyi(model_namedeepseek-v3, dashscope_api_keyDASHSCOPE_API_KEY) # qwen-turbo # 设置查询问题 query 客户经理被投诉了投诉一次扣多少分 if query: # 执行相似度搜索找到与查询相关的文档 docs knowledgeBase.similarity_search(query,k10) # 构建上下文 context \n\n.join([doc.page_content for doc in docs]) # 构建提示 prompt f根据以下上下文回答问题:{context} 问题: {query} # 直接调用 LLM response llm.invoke(prompt) print(response) print(来源:) # 记录唯一的页码 unique_pages set() # 显示每个文档块的来源页码 for doc in docs: text_content getattr(doc, page_content, ) source_page knowledgeBase.page_info.get( text_content.strip(), 未知 ) if source_page not in unique_pages: unique_pages.add(source_page) print(f文本块页码: {source_page})五、Query改写RAG 的核心在于“检索-生成”。如果第一步“检索”就走偏了那么后续的“生成”质量也会降低。用户提出的问题往往是口语化的、承接上下文的、模糊的甚至是包含了情绪的。 而知识库里的文本切片/Chunks通常是陈述性的、客观的。因此需要一个翻译官的角色将用户的“口语化查询”转换成“书面化、精确的检索语句”1、上下文依赖型Query改写instruction “” 你是一个智能的查询优化助手。请分析用户的当前问题以及前序对话历史判断当前问题是否依赖于上下文。 如果依赖请将当前问题改写成一个独立的、包含所有必要上下文信息的完整问题。 如果不依赖直接返回原问题。 “”prompt f“”###指令###{instruction}###对话历史###{conversation_history}###当前问题###{current_query}###改写后的问题###“”例如2、对比型Query改写instruction “” 你是一个查询分析专家。请分析用户的输入和相关的对话上下文识别出问题中需要进行比较的多个对象。然后将原始问题改写成一个更明确、更适合在知识库中检索的对比性查询。 “”prompt 同上3、模糊指代型Query改写instruction “” 你是一个消除语言歧义的专家。请分析用户的当前问题和对话历史找出问题中都、“它”、“这个” 等模糊指代词具体指 向的对象。 然后将这些指代词替换为明确的对象名称生成一个清晰、无歧义的新问题。 “”prompt 同上4、反问型Query改写instruction “” 你是一个沟通理解大师。请分析用户的反问或带有情绪的陈述识别其背后真实的意图和问题。 然后将这个反问改写成一个中立、客观、可以直接用于知识库检索的问题。 “”prompt 同上六、Query联网搜索RAG 系统的 Query 联网搜索功能是将 RAG 的检索源从“本地静态向量库”扩展到了“动态的互联网”。核心流程5步法查询分析与重写 (Query Analysis)模型判断用户的问题是否需要联网意图识别。如果需要它会将自然语言问题改写成适合搜索引擎的“关键词”。用户问“DeepSeek 刚发的那个模型咋样”改写后“DeepSeek-V3 评测 性能 参数介绍”执行搜索 (Web Search)调用搜索 API获取搜索结果列表标题、Snippet、URL。直接用 Google/Baidu 的 HTML 结果给大模型看太乱了。现在流行使用专为 LLM 设计的搜索引擎 API它们直接返回干净的 JSON 或纯文本。Tavily是目前最火的 AI 搜索 API专为 RAG 优化直接返回清洗好的答案片段不用自己写爬虫。网页抓取与清洗 (Scraping Parsing)访问具体的 URL把网页里的广告、导航栏去掉只提取正文内容。上下文组装 (Context Construction)把清洗后的网页内容作为 Context。生成回答 (Generation)LLM 根据网页内容回答用户并附上链接。​最后我在一线科技企业深耕十二载见证过太多因技术卡位而跃迁的案例。那些率先拥抱 AI 的同事早已在效率与薪资上形成代际优势我意识到有很多经验和知识值得分享给大家也可以通过我们的能力和经验解答大家在大模型的学习中的很多困惑。我整理出这套 AI 大模型突围资料包✅AI大模型学习路线图✅Agent行业报告✅100集大模型视频教程✅大模型书籍PDF✅DeepSeek教程✅AI产品经理入门资料完整的大模型学习和面试资料已经上传带到CSDN的官方了有需要的朋友可以扫描下方二维码免费领取【保证100%免费】​​为什么说现在普通人就业/升职加薪的首选是AI大模型人工智能技术的爆发式增长正以不可逆转之势重塑就业市场版图。从DeepSeek等国产大模型引发的科技圈热议到全国两会关于AI产业发展的政策聚焦再到招聘会上排起的长队AI的热度已从技术领域渗透到就业市场的每一个角落。智联招聘的最新数据给出了最直观的印证2025年2月AI领域求职人数同比增幅突破200%远超其他行业平均水平整个人工智能行业的求职增速达到33.4%位居各行业榜首其中人工智能工程师岗位的求职热度更是飙升69.6%。AI产业的快速扩张也让人才供需矛盾愈发突出。麦肯锡报告明确预测到2030年中国AI专业人才需求将达600万人人才缺口可能高达400万人这一缺口不仅存在于核心技术领域更蔓延至产业应用的各个环节。​​资料包有什么①从入门到精通的全套视频教程⑤⑥包含提示词工程、RAG、Agent等技术点② AI大模型学习路线图还有视频解说全过程AI大模型学习路线③学习电子书籍和技术文档市面上的大模型书籍确实太多了这些是我精选出来的④各大厂大模型面试题目详解⑤ 这些资料真的有用吗?这份资料由我和鲁为民博士共同整理鲁为民博士先后获得了北京清华大学学士和美国加州理工学院博士学位在包括IEEE Transactions等学术期刊和诸多国际会议上发表了超过50篇学术论文、取得了多项美国和中国发明专利同时还斩获了吴文俊人工智能科学技术奖。目前我正在和鲁博士共同进行人工智能的研究。所有的视频教程由智泊AI老师录制且资料与智泊AI共享相互补充。这份学习大礼包应该算是现在最全面的大模型学习资料了。资料内容涵盖了从入门到进阶的各类视频教程和实战项目无论你是小白还是有些技术基础的这份资料都绝对能帮助你提升薪资待遇转行大模型岗位。智泊AI始终秉持着“让每个人平等享受到优质教育资源”的育人理念‌通过动态追踪大模型开发、数据标注伦理等前沿技术趋势‌构建起前沿课程智能实训精准就业的高效培养体系。课堂上不光教理论还带着学员做了十多个真实项目。学员要亲自上手搞数据清洗、模型调优这些硬核操作把课本知识变成真本事‌​​​​如果说你是以下人群中的其中一类都可以来智泊AI学习人工智能找到高薪工作一次小小的“投资”换来的是终身受益应届毕业生‌无工作经验但想要系统学习AI大模型技术期待通过实战项目掌握核心技术。零基础转型‌非技术背景但关注AI应用场景计划通过低代码工具实现“AI行业”跨界‌。业务赋能 ‌突破瓶颈传统开发者Java/前端等学习Transformer架构与LangChain框架向AI全栈工程师转型‌。获取方式有需要的小伙伴可以保存图片到wx扫描二v码免费领取【保证100%免费】**​
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

站长之家模板H5网站建设网站定制开发

FLUX.1 [schnell] 终极指南:掌握高效图像生成的艺术 【免费下载链接】FLUX.1-schnell 项目地址: https://ai.gitcode.com/hf_mirrors/black-forest-labs/FLUX.1-schnell 想要在1-4步内生成媲美商业级质量的AI图像吗?FLUX.1 [schnell]作为拥有120…

张小明 2026/1/7 19:55:47 网站建设

一个公司可以做多少个网站高校网站建设存在问题

数据验证与清洗:TensorFlow TFX组件详解 在真实的机器学习项目中,我们常常发现一个令人无奈的事实:模型训练的时间可能只占整个项目的10%,而剩下的90%都在处理数据问题——字段缺失、类型错乱、分布突变……这些问题不会立刻报错&…

张小明 2026/1/7 19:55:45 网站建设

长沙品牌网站建设网站架设

Deno终极指南:用现代JavaScript技术栈构建跨平台应用 【免费下载链接】deno denoland/deno: 是一个由 Rust 编写的新的 JavaScript 和 TypeScript 运行时,具有安全、快速和可扩展的特点。适合对 JavaScript、TypeScript 以及想要尝试新的运行时的开发者。…

张小明 2026/1/7 19:55:50 网站建设

深圳服饰网站建设甘肃seo网站

还在为复杂的无人机数据处理软件头疼吗?WebODM作为完全开源的地理空间处理工具,让你用最简单的方式制作专业级地图。无论你是无人机爱好者还是项目管理者,这款软件都能满足你的需求。 【免费下载链接】WebODM User-friendly, commercial-grad…

张小明 2026/1/7 19:55:49 网站建设

北京专业响应式网站建设网页设计特色及创意

5个实用技巧:轻松在Vim中查看文件属性 【免费下载链接】vim-galore :mortar_board: All things Vim! 项目地址: https://gitcode.com/gh_mirrors/vi/vim-galore 作为一名Vim用户,你是否曾经需要快速了解文件的修改时间、大小或权限信息&#xff1f…

张小明 2026/1/7 19:55:53 网站建设

机电网站模板网站开发全程实例

AR.js实战指南:用普通手机打造专业级增强现实应用 【免费下载链接】AR.js Efficient Augmented Reality for the Web - 60fps on mobile! 项目地址: https://gitcode.com/gh_mirrors/ar/AR.js 在当今移动互联网时代,AR.js正以其独特的技术优势&am…

张小明 2026/1/7 19:55:54 网站建设