书生·浦语大模型开源体系(三)笔记+作业

本文介绍了如何在茴香豆Web版中创建自定义领域的知识问答助手,包括在HuixiangdouWeb应用中设置知识库、在InternLMStudio上部署技术助手,以及详细步骤如下载模型、安装依赖、配置文件和创建向量数据库。作者还演示了如何使用茴香豆搭建RAG助手,以及知识库的构建和运行过程。

💗💗💗欢迎来到我的博客,你将找到有关如何使用技术解决问题的文章,也会找到某个技术的学习路线。无论你是何种职业,我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章,也欢迎在文章下方留下你的评论和反馈。我期待着与你分享知识、互相学习和建立一个积极的社区。谢谢你的光临,让我们一起踏上这个知识之旅!
请添加图片描述

🍀在茴香豆 Web 版中创建自己领域的知识问答助手

我使用的文档正是https://arxiv.org/pdf/2312.10997.pdf

下面是我问的几个问题
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

从某种意义上讲,可以帮助我们进行快速的查缺补漏哈

下面是具体的操作流程

首先我们打开网站
https://openxlab.org.cn/apps/detail/tpoisonooo/huixiangdou-web
在这里插入图片描述
接下来输入知识库名称和密码即可,输入完成后就行下面的界面
在这里插入图片描述
之后我们只需要点击查看或上传文档即可,这就相当于我们获得了一个外部的知识库,接下来我们就可以对我们简易的小助手进行提问了,如最上面几张图所示,当然我们也可以简单的测试一下玩一玩

当我们问你是谁的时候,这时候应该是固定回复了
在这里插入图片描述
那如果我们问了一个和文档不相关的问题的时候,模型会怎么回复呢
在这里插入图片描述
这时候就看起来很傻了哈哈哈~


🍀在 InternLM Studio 上部署茴香豆技术助手

首先还是进入到开发机
在这里插入图片描述

进入开发机后,从官方环境复制运行 InternLM 的基础环境,命名为 InternLM2_Huixiangdou,在命令行模式下运行:

studio-conda -o internlm-base -t InternLM2_Huixiangdou

复制完成后,在本地查看环境。

conda env list

运行 conda 命令,激活 InternLM2_Huixiangdou python 虚拟环境:

conda activate InternLM2_Huixiangdou

下载基础文件

复制茴香豆所需模型文件,为了减少下载和避免 HuggingFace 登录问题,所有作业和教程涉及的模型都已经存放在 Intern Studio 开发机共享文件中。本教程选用 InternLM2-Chat-7B 作为基础模型。

# 创建模型文件夹
cd /root && mkdir models

# 复制BCE模型
ln -s /root/share/new_models/maidalun1020/bce-embedding-base_v1 /root/models/bce-embedding-base_v1
ln -s /root/share/new_models/maida
### 书生浦语大模型作业实现指南 #### 1. 环境配置与模型加载 为了完成与书生浦语大模型相关的作业,首先需要确保基础环境已正确配置。可以通过指定 `local_llm_path` 参数来加载本地模型文件夹路径或 Huggingface 上的模型名称,例如 `"internlm/internlm2-chat-7b"` 或 `"qwen/qwen-7b-chat-int8"` [^1]。此外,还需设置参数 `local_llm_max_text_length`,以定义模型可接受的最大文本长度。 对于具体操作步骤,可以参考如下 Python 示例代码: ```python from transformers import AutoTokenizer, AutoModelForCausalLM model_name_or_path = "internlm/internlm2-chat-7b" tokenizer = AutoTokenizer.from_pretrained(model_name_or_path) model = AutoModelForCausalLM.from_pretrained(model_name_or_path) max_input_length = model.config.max_position_embeddings print(f"Maximum input length supported by the model: {max_input_length}") ``` #### 2. 数据准备与微调策略 在实际应用中,可能需要对书生浦语大模型进行微调以适配特定任务需求。常见的微调方式包括 **增量预训练** 和 **指令跟随微调** [^3]。前者适用于引入新的领域知识(如行业术语、技术文档),后者则用于优化模型的对话能力。 以下是针对不同场景的数据准备建议: - 如果目标是提升模型的知识覆盖范围,则应收集相关领域的文章、书籍或其他结构化数据作为训练集; - 若旨在增强交互效果,则需构建高质量的人机对话样本集合。 #### 3. 功能开发实例——图文创作工具 利用书生浦语及其衍生版本(如浦语·灵笔2),开发者能够快速搭建具备先进图文生成能力的应用程序 [^2]。下面展示了一个简单的 CLI 接口设计思路,允许用户输入自定义主题并获得相应的文字描述及配套插图链接。 ```python def generate_article_with_images(prompt): response = model.generate( tokenizer.encode(prompt, return_tensors="pt"), max_new_tokens=500, num_beams=4, no_repeat_ngram_size=2 ) decoded_output = tokenizer.decode(response[0], skip_special_tokens=True) article_content, image_url_list = parse_response(decoded_output) # 自定义解析逻辑 return {"text": article_content, "images": image_url_list} if __name__ == "__main__": user_prompt = input("请输入您的创意方向:") result = generate_article_with_images(user_prompt) print(result["text"]) for idx, img_link in enumerate(result["images"]): print(f"[Image {idx+1}] URL: {img_link}") ``` > 注:以上仅为伪代码框架示意,请根据实际情况调整函数内部实现细节以及依赖库的选择。 #### 4. 常见问题分析与改进措施 尽管书生浦语系列表现出众,但在某些复杂查询情境下仍可能存在不足之处 [^5]。比如,当面对高度相似的信息源时,可能会倾向于优先选用最早录入的内容而忽略后续更新更优解的可能性。对此现象可通过以下方法缓解: - 扩展检索范围至整个数据库而非局限于前几条记录; - 结合外部搜索引擎动态补充实时资讯; - 定期维护知识库内容保持时效性和准确性。 ---
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小馒头学python

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值