news 2026/4/1 18:28:24

别再让AI瞎编了!RAG检索增强生成技术,小白也能5分钟上手

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
别再让AI瞎编了!RAG检索增强生成技术,小白也能5分钟上手

文章详细解释了RAG(检索增强生成)技术,通过生活化例子说明其核心逻辑是"先检索再增强生成",解决AI"幻觉"问题。介绍了RAG的7大组件及其功能,并提供了完整的Python代码示例,使用LangChain框架实现RAG系统,帮助开发者快速理解和应用RAG技术。


今天遇到部门一个实习生小伙来问我,RAG到底是什么,最近好多客户在问我们有没有RAG的解决方案。没错,RAG是目前AI在落地过程中经常遇到的一个应用场景。相信很多读者也存在着一知半解的困惑,别担心,这篇文章我来带你详细拆解RAG。

RAG是什么,可以用来干嘛?

让我们先结合一个生活化的例子举例,方便更好的理解。例如学生写作文:你要写一篇关于 “低碳生活” 的作文,先去图书馆查环保手册、新闻报道(检索相关信息),再结合自己知道的节电、垃圾分类知识(模型自身知识),最终写出内容准确又贴合主题的作文 ——RAG 就像这个 “先查资料再创作” 的过程。

结合这个例子,我们来好好理解一下RAG的相关概念:

RAG(Retrieval-Augmented Generation,检索增强生成)是一种结合 “检索外部知识” 和 “AI 生成内容” 的技术,核心目的是让 AI 输出的内容更准确、有依据、不胡编。

  1. 核心逻辑:AI 在生成回答前,先从专门的知识库(可以是企业文档、网络资料、专业数据等)中,精准找到与问题相关的信息(这一步是 “检索”);再把这些检索到的 “参考资料” 和问题一起,传给生成模型(比如 GPT 类模型);模型基于参考资料和自身原有知识,生成回答(这一步是 “增强生成”)。

  2. 关键价值:RAG主要是为了解决纯生成模型 “记不住新信息、容易编造错误内容(幻觉)” 的问题,让 AI 能实时调用最新、最专业的知识库内容,输出可追溯、可验证的结果。

  3. 适用场景:企业智能客服(查询企业产品手册)、行业知识专业问答(医疗 / 法律资料检索)、知识库问答(公司内部文档查询)等需要 “精准依据” 的场景。

因此,有关RAG的概念我们可以很简单地概括为:先检索,再增强,最后生成内容不瞎讲。


一、RAG的组件与工作流程

RAG一共有7大组件,分别是:文档加载器、文本分割器、嵌入模型、向量数据库、检索器、提示词工程、LLM。同样的,我还是用一个生活化的例子,方便大家理解。

你是一个正在完成课程报告的大学生,有7个非常牛的室友,他们和你一起去图书馆查阅资料完成老师交代给你们的课程报告。

  1. 文档加载器:A室友,他是 “资料收集者”,把书架上的书、电脑里的文档、网页文章等所有原始资料,统一搬到你们的学习桌面(系统)上。
  2. 文本分割器:B室友,他是 “拆解资料的人”,把厚书、长文档拆成 “1 页 1 个知识点” 的纸张(短文本),避免找资料时要翻整本书。
  3. 嵌入模型:C室友,他是 “写便利贴的人”,给每份纸张写清楚 “关键词标签(比如python基础)”的便利贴(向量)。
  4. 向量数据库:D室友,他是 “掌管文件柜的人”,把贴好便利贴(向量)的纸张按 “标签相似度” 分类存放,比如所有 “Python” 相关的纸条放一格,方便快速找到。
  5. 检索器:E室友,他是 “找纸条的好手”,根据你要写的报告主题(用户问题),快速从文件柜里找出最相关的几张便利贴。
  6. 提示词工程:F室友,他是 “整理纸条的人”,把找到的便利贴内容和你的报告要求(用户问题)整理成一段通顺的 “写作指令”,告诉写手重点是什么。
  7. LLM(大语言模型):G室友,他是 “专业写手”,根据整理好的指令和便利贴资料,写出符合要求、逻辑通顺的报告(最终回答)。

结合这个例子,我们再来详细看下各个组件的具体功能。

  1. 文档加载器(Document Loader)
  • 核心功能:连接并读取各类数据源,将分散的原始数据(PDF、Word、网页、数据库等)统一导入 RAG 系统。
  • 关键作用:打破数据孤岛,让系统能 “看到” 所有需要用到的资料。
  1. 文本分割器(Text Splitter)
  • 核心功能:将长文本按固定规则(如字数、语义段落)拆分成短文本片段(Chunk)。
  • 关键作用:避免因文本过长导致后续检索不准确,同时降低模型处理压力,让 “找重点” 更高效。
  1. 嵌入模型(Embedding Model)
  • 核心功能:将文本片段转化为高维向量(数值数组),同时捕捉文本的语义信息(比如 “苹果” 和 “水果” 的向量会更相似)。
  • 关键作用:把 “文字理解” 转化为 “电脑能计算的数值”,为后续快速检索打基础。
  1. 向量数据库(Vector Database)
  • 核心功能:存储所有文本片段的向量,并用专门算法(如余弦相似度)快速匹配 “相似向量”。
  • 关键作用:替代传统数据库的 “关键词匹配”,实现 “语义级检索”,比如用户问 “如何快速学 Python”,能找到 “Python 入门技巧” 相关内容,而非只找含 “快速学 Python” 字面的文本。
  1. 检索器(Retriever)
  • 核心功能:接收用户问题,通过嵌入模型将问题转成向量,再到向量数据库中检索出最相关的文本片段。
  • 关键作用:筛选出 “有用资料”,避免 LLM 在海量数据中盲目查找,提升回答效率和准确性。
  1. 提示词工程(Prompt Engineering)
  • 核心功能:设计合理的提示词模板,将用户问题、检索到的文本片段整合为 LLM 能理解的指令。
  • 关键作用:告诉 LLM “用这些资料回答这个问题”,避免 LLM 凭空捏造答案,同时规范回答格式和逻辑。
  1. LLM(Large Language Model)
  • 核心功能:基于提示词指令和检索到的相关资料,生成自然、连贯、准确的最终回答。
  • 关键作用:RAG 的 “输出端”,将检索到的碎片化资料转化为用户能直接理解的完整信息。
组件名称核心作用常见工具 / 框架使用注意事项
文档加载器导入各类原始数据源,打通数据入口LangChain DocumentLoader、Unstructured、PyPDF21. 按文档格式选对应加载器(如 PDF 用 PyPDF2);2. 注意处理加密 / 损坏文档
文本分割器拆分长文本为短片段(Chunk),提升检索效率LangChain RecursiveCharacterTextSplitter、SentenceTransformers 文本分割1. 片段长度控制在 200-500 字(平衡语义完整性和检索速度);2. 按语义拆分(避免切断完整知识点)
嵌入模型文本转语义向量,捕捉语义关联OpenAI Embeddings、Sentence-BERT、通义千问 Embedding、all-MiniLM-L6-v21. 选择与业务场景匹配的模型(通用场景用 Sentence-BERT);2. 注意向量维度与向量数据库兼容
向量数据库存储向量 + 快速语义匹配检索Milvus、Chroma、Pinecone、FAISS1. 小规模场景用 Chroma(轻量化),大规模用 Milvus;2. 定期优化向量索引提升检索速度
检索器匹配用户问题与相关文本片段LangChain Retriever、FAISS 检索器1. 可设置 “Top-K” 参数(默认 3-5 条,平衡相关性和效率);2. 复杂场景可叠加过滤规则(如时间范围)
提示词工程整合问题 + 检索结果,生成 LLM 可理解的指令LangChain PromptTemplate、自定义提示词模板1. 明确指令(如 “基于以下资料回答,不编造信息”);2. 控制输入长度,避免超出 LLM 上下文窗口
LLM(大语言模型)基于指令和检索资料,生成自然语言回答GPT-3.5/4、通义千问、Llama 2、文心一言1. 绑定检索结果,禁用 “幻觉”(提示词中强调 “仅用提供资料”);2. 按回答长度需求设置 max_tokens
注意:想必你也注意到了,这里面LangChain的出现频率很高,不管是文档加载、分割、检索、提示词等各个环境好像都用到了它。没错,LangChain是一个构建LLM的开源框架,他基本覆盖了RAG中7个组件的所有流程。在下面的demo中,除了chroma向量数据库和嵌入模型all-MiniLM-L6-v2这两个东西本身以外,文档加载器(加载pdf,word之类的工具)、文档分割器(把文档进行切片分割,按照chunk的大小可以设计)、嵌入模型的调用工具、向量数据库的调用工具、查询器、提示词工程、LLM的输出调用,以及最后的链式调用(将前面这一套工作流程串起来),我们都将调用LangChain的工具包来实现RAG功能。

工作机制拆解

了解完各个组件的作用,接下来我们可以总结出来RAG的工作机制。主要可以分为三个阶段:

  1. 数据准备阶段:文档加载器导入原始资料 → 文本分割器拆成短片段 → 嵌入模型转成向量 → 向量数据库存储向量。
  2. 检索阶段:用户提问 → 嵌入模型将问题转成向量 → 检索器在向量数据库中匹配相关文本片段。
  3. 生成阶段:提示词工程整合 “问题 + 相关片段” → LLM 基于整合信息生成回答。

实践环节:RAG实例Demo

最后,让我们通过一段python代码实例demo,真正的理解RAG的使用和工作过程。

demo使用注意事项:

  1. 可在windows环境执行;
  2. 使用前请在环境中安装相关依赖,安装命令在开头注释;
  3. 嵌入模型需要提前下载到本地,安装命令在开头注释;
# -*- coding: utf-8 -*- # RAG 模板:国内依赖可下载 + DeepSeek API 调用 # 环境:Python 3.12+ # 使用前请执行命令安装依赖:pip install langchain langchain-community langchain-core langchain-deepseek sentence-transformers chromadb pypdf2 openai tiktoken # 系统使用本地嵌入模型 all-MiniLM-L6-v2,确保项目目录中包含该模型文件夹。如果没有,可以通过以下方式下载: # python -c "from sentence_transformers import SentenceTransformer; model = SentenceTransformer('sentence-transformers/all-MiniLM-L6-v2', cache_folder='./all-MiniLM-L6-v2')" # 配置完成后,可通过python rag_deepseek_demo.py命令执行使用 import os from langchain_community.document_loaders import PyPDFLoader from langchain_text_splitters import RecursiveCharacterTextSplitter from langchain_community.embeddings import HuggingFaceEmbeddings from langchain_community.vectorstores import Chroma from langchain_deepseek import ChatDeepSeek from langchain_core.prompts import ChatPromptTemplate from langchain_core.runnables import RunnablePassthrough from langchain_core.output_parsers import StrOutputParser # --- 1. 核心配置 --- # 文档路径(本地 PDF) # 使用相对路径而不是绝对路径,确保在Windows系统上正常工作 DOCUMENT_PATH = "./document/your_pdf.pdf" # 替换为你的 PDF 路径,可以将PDF放到当前目录下 # DeepSeek API 配置 DEEPSEEK_API_KEY = "your_api_key" # 替换为你的密钥 os.environ["DEEPSEEK_API_KEY"] = DEEPSEEK_API_KEY DEEPSEEK_BASE_URL = "https://api.deepseek.com/v1" # DeepSeek API 国内可访问 # 向量数据库路径(本地存储) DB_PATH = "./chroma_db" # 嵌入模型(本地模型) EMBEDDING_MODEL_NAME = "./all-MiniLM-L6-v2" # 使用本地已下载的模型 # LLM 模型(DeepSeek API 内置) LLM_MODEL_NAME = "deepseek-chat" # --- 2. 文档加载与处理 --- print("--- 步骤1:加载本地 PDF 文档 ---") try: loader = PyPDFLoader(DOCUMENT_PATH) documents = loader.load() print(f"成功加载 {len(documents)} 页文档(路径:{DOCUMENT_PATH})") except FileNotFoundError: print(f"错误:未找到 PDF 文件!请检查路径:{DOCUMENT_PATH}") exit() print("--- 步骤2:分割文本为短片段 ---") # 优化文本分割参数,增加chunk_size减少重复内容 text_splitter = RecursiveCharacterTextSplitter( chunk_size=500, # 增加到500字,捕获更多上下文 chunk_overlap=100, # 重叠增加到100字 length_function=len, separators=["\n\n", "\n", "。", "!", "?", ";", ",", " "] # 使用中文分割符 ) chunks = text_splitter.split_documents(documents) print(f"成功分割为 {len(chunks)} 个文本片段") # 添加去重逻辑 print("--- 步骤2.5:去重文本片段 ---") unique_chunks = [] seen_content = set() for chunk in chunks: # 使用内容的哈希值进行去重 content_hash = hash(chunk.page_content) if content_hash not in seen_content: seen_content.add(content_hash) unique_chunks.append(chunk) print(f"去重后剩余 {len(unique_chunks)} 个文本片段") chunks = unique_chunks # --- 3. 初始化嵌入模型 --- print("--- 步骤3:初始化嵌入模型(使用本地模型) ---") embedding = HuggingFaceEmbeddings( model_name=EMBEDDING_MODEL_NAME, model_kwargs={'device': 'cpu'} # 无 GPU 则用 CPU,有 GPU 可改为 'cuda' ) print(f"成功加载嵌入模型:{EMBEDDING_MODEL_NAME}(本地模型)") # --- 4. 初始化本地向量数据库 --- print("--- 步骤4:初始化 Chroma 向量数据库 ---") # 先清理旧的数据库,确保使用最新的文档(可选) import shutil if os.path.exists(DB_PATH): print(f"清理旧的向量数据库:{DB_PATH}") shutil.rmtree(DB_PATH) db = Chroma.from_documents( chunks, embedding=embedding, persist_directory=DB_PATH ) print(f"向量数据库已创建并保存到:{DB_PATH}(本地文件)") # --- 5. 连接 DeepSeek API --- print("--- 步骤5:连接 DeepSeek API ---") llm = ChatDeepSeek( model=LLM_MODEL_NAME, # 注意:新版可能使用model而非model_name base_url=DEEPSEEK_BASE_URL, temperature=0.1 ) print(f"成功连接 DeepSeek API(模型:{LLM_MODEL_NAME})") # --- 6. 构建 RAG 链(使用新版的链式API) --- print("--- 步骤6:构建 RAG 问答链 ---") # 创建检索器 - 优化检索参数 print("--- 创建优化的检索器 ---") # 改用普通相似度搜索,确保能检索到文档 retriever = db.as_retriever( search_type="similarity", search_kwargs={ "k": 6 # 增加返回文档数量到6个 } ) # 提示词模板 #prompt_template = """你是基于本地 PDF 文档的问答助手,请严格按照以下规则回答: #1. 仅使用提供的上下文信息(本地 PDF 内容)回答问题; #2. 若上下文无相关答案,直接回复"根据提供的 PDF 文档,无法回答此问题。"; #3. 回答需清晰、简洁,用中文组织语言。 # 提示词模板 prompt_template = """你是基于本地 PDF 文档的问答助手,请严格按照以下规则回答: 1. 尽量使用提供的上下文信息(本地 PDF 内容)回答问题; 2. 若上下文无相关答案,可以根据自己的理解实际输出答案; 3. 回答需清晰、简洁,用中文组织语言。 上下文信息: {context} 用户问题: {question} 回答:""" prompt = ChatPromptTemplate.from_template(prompt_template) # 定义格式化文档的函数 def format_docs(docs): return "\n\n".join(doc.page_content for doc in docs) # 构建 RAG 链 - 添加调试日志 def rag_chain_function(query): print(f"【调试】查询问题: {query}") # 检索相关文档 print("【调试】开始检索相关文档...") docs = retriever.invoke(query) print(f"【调试】检索到 {len(docs)} 个相关文档片段") # 显示每个检索到的文档内容和相似度分数 has_relevant_docs = False for i, doc in enumerate(docs): print(f"【调试】文档片段 {i+1}:") # 检查是否有相似度分数 score = None if hasattr(doc, 'metadata') and 'score' in doc.metadata: score = doc.metadata['score'] elif hasattr(doc, 'score'): score = doc.score if score is not None: print(f"【调试】相似度分数: {score:.4f}") if score > 0.4: # 高于0.4的认为是相关的 has_relevant_docs = True print(f"【调试】内容: {doc.page_content[:200]}...") # 只显示前200个字符 print(f"【调试】元数据: {doc.metadata}") print(f"【调试】页码: {doc.metadata.get('page', 'Unknown')}") print("【调试】" + "-"*60) # 格式化文档 context = format_docs(docs) print(f"【调试】格式化后的上下文长度: {len(context)} 字符") print(f"【调试】上下文预览: {context[:300]}...") # 如果没有找到足够相关的文档,增加额外提示 if not has_relevant_docs and len(docs) > 0: print("【调试】警告:未找到高相关度文档,可能会影响回答质量") elif len(docs) == 0: print("【调试】警告:未检索到任何相关文档") return "根据提供的 PDF 文档,无法找到相关信息回答此问题。" # 准备输入给LLM inputs = { "context": context, "question": query } # 调用提示词模板、LLM和输出解析器 try: print("【调试】开始调用 LLM 生成回答...") result = (prompt | llm | StrOutputParser()).invoke(inputs) print(f"【调试】LLM 返回结果: {result}") return result except Exception as e: print(f"【调试】LLM 调用错误: {str(e)}") import traceback traceback.print_exc() raise # 将函数作为RAG链 rag_chain = rag_chain_function print("RAG 链构建完成!所有依赖均为国内可下载,LLM 调用 DeepSeek API") # --- 7. 交互问答 --- print("\n--- RAG 问答系统已启动 ---") print("提示:输入问题查询 PDF 内容,输入 'exit' 退出") while True: try: user_query = input("\n请输入问题:") if user_query.lower() == "exit": print("再见!") break if not user_query.strip(): print("请输入有效的问题") continue print("正在检索并生成答案...") # 执行 RAG 链,直接调用函数 try: # 直接调用函数而不是使用invoke方法 answer = rag_chain(user_query) print(f"\n答案:{answer}") except Exception as e: print(f"错误:{str(e)}") import traceback traceback.print_exc() except KeyboardInterrupt: print("\n程序被用户中断") break except Exception as e: error_msg = str(e) if "API key" in error_msg: print("错误:DeepSeek API 密钥无效或未设置!请检查 DEEPSEEK_API_KEY") elif "connection" in error_msg: print("错误:网络连接失败!请检查网络或 DeepSeek API 地址") else: print(f"错误:{error_msg}") import traceback traceback.print_exc() # 打印详细的错误堆栈信息

系统启动后,会经历以下初始化步骤:

加载本地 PDF 文档 分割文本为短片段 初始化嵌入模型 初始化向量数据库 连接 DeepSeek API 构建 RAG 问答链

初始化完成后,可以通过命令行进行交互问答:

--- RAG 问答系统已启动 --- 提示:输入问题查询 PDF 内容,输入 'exit' 退出 请输入问题:[输入你的问题] 正在检索并生成答案... 【调试】查询问题: [你的问题] 【调试】开始检索相关文档... 【调试】检索到 X 个相关文档片段 ... 答案:[系统回答]

通过这个demo,相信你会快速的理解RAG各个组件作用及其工作流程。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/15 10:38:53

Open-AutoGLM灾害推演能力曝光(模拟万级并发灾情调度仅需8秒)

第一章:Open-AutoGLM 应急救灾调度辅助在重大自然灾害或突发事件中,快速、精准的应急资源调度是保障生命安全与社会稳定的决定性因素。Open-AutoGLM 作为一款基于开源大语言模型的智能决策辅助系统,专为复杂场景下的多目标优化调度设计&#…

作者头像 李华
网站建设 2026/3/14 13:22:12

Linux发展到6.0了,其在嵌入式应用中,实时性方面有没有一些改进?

各专栏更新如下👇 大模型初探分享零基础AI学习经历 OAI-5G开源通信平台实践 OpenWRT常见问题分析 5G CPE 组网技术分享 Linux音视频采集及视频推拉流应用实践详解 得力工具提升工作效率 Linux内核发展到6.0及更新的版本,在实时性方面确实取得了里程…

作者头像 李华
网站建设 2026/3/20 2:05:05

怎么查外国文献写研究现状:方法与技巧指南

一、wispaper 入口在这👉https://www.wispaper.ai/ 追踪自己研究方向的前沿,其实是搞科研关键的技能之一 问题是,每天手动去检索新论文太麻烦!看《Nature》《Science》这种综合期刊又太杂,想找对口内容很难&#xf…

作者头像 李华
网站建设 2026/3/13 8:12:16

怎么找出一篇论文的研究问题:实用方法与技巧指南

一、wispaper 入口在这👉https://www.wispaper.ai/ 追踪自己研究方向的前沿,其实是搞科研关键的技能之一 问题是,每天手动去检索新论文太麻烦!看《Nature》《Science》这种综合期刊又太杂,想找对口内容很难&#xf…

作者头像 李华
网站建设 2026/3/25 8:43:14

Open-AutoGLM如何实现个性化教学?3个真实场景深度拆解

第一章:Open-AutoGLM如何重塑个性化教学新范式Open-AutoGLM作为新一代开源自动生成语言模型,正以强大的语义理解与内容生成能力推动教育领域的深层变革。其核心优势在于能够根据学习者的知识水平、学习风格和兴趣偏好,动态构建个性化的教学路…

作者头像 李华