今天是2023年10月14日,星期六,北京,天气晴,我们来看看一些关于RAG信息检索增强搜索、关于大模型的理论入门以及初步的面试指引方面的开源工作推荐,供大家一起参考。
一、关于RAG信息检索增强搜索的一些入门指引
1、ACL2023陈丹琦等《基于检索的大语言模型及其应用》
该报告从问题设置、架构、应用、挑战等角度全面了解检索增强的语言模型。
下面是具体的参考路线
地址:https://acl2023-retrieval-lm.github.io/
2、graph-rag基于知识图谱的搜索增强
地址:https://siwei.io/graph-rag/
一个简单的 Graph RAG 思想在于,对用户输入的query提取实体,然后构造子图形成上下文,最后送入大模型完成生成,如下代码所示:
def simple_graph_rag(query_str, nebulagraph_store, llm):
entities = _get_key_entities(query_str, llm)
graph_rag_context = _retrieve_subgraph_context(entities)
return _synthesize_answer(
query_str, graph_rag_context, llm)
首先,使用LLM(或其他)模型从问题中提取关键实体。
def _get_key_entities(query_str, llm=None ,with_llm=True):
...
return _expand_synonyms(entities)
其次,根据这些实体检索子图,深入到一定的深度,例如可以是2度甚至更多。
def _retrieve_subgraph_context(entities, depth=2, limit=30):
...
return nebulagraph_store.get_relations(entities, depth, limit)
最后,利用获得的上下文利用LLM产生答案。
def _synthesize_answer(query_str, graph_rag_context, llm):
return llm.predict(PROMPT_SYNTHESIZE_AND_REFINE, query_str, graph_rag_context)
3、Langchain-Chatchat本地文档问答
LangChain-Chatchat(原Langchain-ChatGLM):基于Langchain与ChatGLM等大语言模型的本地知识库问答应用实现。依托于本项目支持的开源LLM与Embedding模型,本项目可实现全部使用开源模型离线私有部署。
项目实现过程包括加载文件->读取文本->文本分割->文本向量化->问句向量化->在文本向量中匹配出与问句向量最相似的topk个->匹配出的文本作为上下文和问题一起添加到prompt中->提交给LLM生成回答。
二、关于大模型的理论入门以及初步的面试指引
1、扫盲入门:Chatgpt复现之路博客
ChatGPT复现之路(地址:https://wqw547243068.github.io/chatgpt_mimic)是目前所见到的科普较为完整的一个博客,写的很好,对于入门和了解相关概念的又很大的帮助。
例如,其对无监督训练pretrain、监督训练sft以及强化学习RLHF的形象比喻
又如,其在对chatgpt训练三步走阶段的一个总结
又如,对中文llama汉化的一些工作路线总结
2、面试指引:awesome_LLMs_interview_notes
大模型(LLMs)算法工程师相关的面试题和参考答案(地址:github.com/jackaduma/awesome_LLMs_interview_notes)
该项目开源了一些常见的大模型理论层面的面试题,具体包括大模型(LLMs)基础面,大模型(LLMs)进阶面,大模型(LLMs)微调面,大模型(LLMs)langchain面,基于LLM+向量库的文档对话经验面,大模型(LLMs)参数高效微调(PEFT)面,大模型(LLMs)推理面,大模型(LLMs)评测面,大模型(LLMs)强化学习面,大模型(LLMs)训练集面,大模型(LLMs)agent面,Token及模型参数准备篇,LLMs位置编码篇,LLMsTokenizer篇,LayerNormalization篇,LLMs激活函数篇等。
例如:
作答例子:
需要注意的是,答案猜测是抓了GPT4的答案,因为答案很制式化,是很明显的三段论,缺啥细节且有效的信息。但可以收益的是,其中提到的一些问题,可以作为我们思考的方向,我们可以自行地去获得答案。
关于我们
老刘,刘焕勇,NLP开源爱好者与践行者,主页:https://liuhuanyong.github.io。
老刘说NLP,将定期发布语言资源、工程实践、技术总结等内容,欢迎关注。
对于想加入更优质的知识图谱、事件图谱、大模型AIGC实践、相关分享的,可关注公众号,在后台菜单栏中点击会员社区->会员入群加入。