一、导言 ***牵头组织了一个会议,对Deepseek在视讯方案的可能性进行了一番讨论,讨论后的结论是对Deepseek先做一番技术上的预研,然后再上产品路标。后来**和**也针对此事做了一些交待。再后来就是撸起袖子了。 二、预研目标 《Deepseek在视讯方案的可能性》:一句话表示:在消费级的GPU上跑满血版Deepseek R11、GPU:结合公司的实际情况(还躺在米国政府的黑名单上),预研所针对的硬件必须是我们有可能买得到的硬件。2、Deepseek R1满血版:预研初期确定的目标是满血版Deepseek R1 671B(实际测下来发现可能存在一些问题) 三、预研情况说明 在曾哥租到GPU服务器之后,有了硬件资源后,主要利用这个GPU服务器做了以下几部分预研。一是包括Deepseek/QwQ32-B/Gemma3等等在内的大模型安装、部署与测试。二是有了大模型之后,视讯这边可能的一些应用,包括:Chat API, Agent等。三是与KIS做了一些集成测试。四是视讯智能产品KIS相关的一些周边技术,包括:ASR, TTS等。 一)预研设定的环境 1. 软件环境 PyTorch 2.5.1Python 3.12(ubuntu22.04)Cuda 12.4 2. 硬件环境 ○GPU:RTX 4090(24GB) * 2○CPU:64 vCPU Intel(R) Xeon(R) Gold 6430○内存:480G(至少需要382G)○硬盘:1.8T(实际使用需要380G左右) 参考:京东上GPU 4090 x2+CPU 6330 +内存64G+硬盘2T报价约为:69500。https://item.jd.com/10106874216614.html 二)大模型测试 直接上结论。 测试结果 大模型 框架 max_new_tokens context GPU数量 TPS(单连接) TPS(多连接) ds-r1-671b Q4 KT 8192 […]
Yearly Archives: 2025
回首当年,咱要练习听力,就是看美剧,但是现在时代不一样了。 刚才看到一个新闻,说吴彦祖跨界教英语! 而Catherine同学去年春考英语没考好,由于也拿不到考试的实际结果,不能明确知道到底是哪儿丢了多少分,但是猜测一部分的原因就在于听力那里不知道是开个个小差,还是怎么样,反正大概率就是在那里丢了不少分。 考虑到去年跟Catherine一起学习了一些智能相关的东西,心想是不是刚好可以把这个作为一个课题来练习?等Catherine这个星期五从学校放学回来了,跟她再商量商量。不过,我自己的计划可以先做起来。 同时也是为了庆祝,咱这个公众号终于通过了实名认证,中间的千波万折咱就不提了。 另外,也敬告阿祖,这次别收手了。 想做一个练习听力的功能 – 将Catherine前面做的聊天机器人后台改一下,加个TTS(Text to speech)的功能。 – 给聊天机器人加一个system prompt(系统人设),让TA不管你跟TA用什么语言来说话,统一都只用英语来回复。 – 然后前端在收到后台LMM返回的文字后,再去调用一下后台的TTS引擎,生成音频,再返回给前端,由前端来将其播放出来。 – 其它。。。省略一万字,各种暂时还没想到的功能或流程 跟“阿祖教英语”的区别 互动方式不同:阿祖教英语实际上就是看视频;咱要做一个实时互动的聊天。 问了下deepseek:视频教学和实时互动教学的区别 Deepseek说: 视频教学和实时互动教学是两种主流在线教育形式,其核心区别及对初学者的适用性可从以下维度分析: 对比维度 视频教学 实时互动教学 互动性 单向输出,缺乏即时反馈 双向交流,可实时提问、纠错 灵活性 自主安排学习时间,支持反复观看 固定时间参与,需同步在线 学习氛围 标准化内容,适合基础知识点传递 可根据学生水平调整难度,针对性强 教学深度 缺乏社交属性,易产生孤独感 师生 / 同学互动增强参与感 技术要求 低(仅需播放设备) 高(需稳定网络、互动工具操作能力) 如果是用AI来做的话,那上面提到的实时互动教学的“灵活性”一条,也可以不需要固定时间参与,不需要同步在线了。 为什么只做听力,不做口语? 一句话来说就是:臣妾做不到啊。 以下是借口: 如果要练习口语的话,考虑到现有的STT(Speech-to-text)语音转文字/ASR语音识别的功能不太合适,如果你发音不对的话,直接在STT这一环就被识别错误,到了文本大模型就已经是一段错误的文本,现有的、我掌握的技术路径下,无法做到用一个音频大模型来覆盖开放式的口语发音的学习的功能,现有的口语训练校正都是封闭式的,如:给出一段固定的文字,然后后台配置一个标准发音的音频,然后再将用户说出来的音频来做一个对比,看匹配度多少,以此来打分,这个打分功能就跟KTV里的卡拉OK打分一样,可能是非常不准确的,许多时候重要的只是音量,不是实际的发音。 立个Flag 我要开工了,这次一定不半途而废。不管这个练习听力的功能最终的实际效果会怎么样,适不适应这个应用场景,现在我也不知道,但是退一步讲,这个功能即使最终发现不适合,那单纯这个TTS文字转语音的功能也是日后虚拟人标配必须的功能。希望利用这个星期的下班时间搞一搞。
用Ollama 对 Gemma3多模态27B版本做功能、性能测试 谷歌刚刚推出的开放权重LLM:Gemma 3。它有四种大小,10亿、40亿、120亿和270亿个参数,有基础(预训练)和指令调优版本。Gemma 3 MultiModel人如其名,支持多模式!40亿、12亿和270亿参数模型可以处理图像和文本,而1B变体仅处理文本。 今天咱来试试看。 一、硬件环境 租的AutoDL的GPU服务器做的测试 •软件环境 PyTorch 2.5.1、Python 3.12(ubuntu22.04)、Cuda 12.1 •硬件环境 ○GPU:RTX 4090(24GB) * 2 ○CPU:64 vCPU Intel(R) Xeon(R) Gold 6430 ○内存:480G(至少需要382G) ○硬盘:1.8T(实际使用需要380G左右) 二、虚拟环境及vllm安装 默认认为你已经安装好了conda,如果还没安装的话,先搜索一下conda安装 三、安装Day0 transformers Gemma3依赖一些Google新提供的transformers的接口,因此必须先更新一下transformers。 建议走一下github加速器:ghfast.top 四、模型下载 export HF_HOME=”/root/autodl-tmp/HF_download” setproxy.py代码: 执行 python setproxy.py 设置代理环境变量 然后再下载: 共16个G多一点。慢慢来。 五、模型运行 用ollama来运行gemma3 运行前请确保ollama服务已启动,若未启动的话,请在另一个命令行中先启动一下: ollama serve 若ollama后台服务已经启动,则可以开始加载运行gemma3了 […]
问题现象 在Open WebUI里上传一个附件,然后针对这个附件做聊天或者问答,但是返回异常。 查看后台日志,有如下报错: 问题分析 从后台的错误上看应该是save_docs_to_vector_db的embedding_functionb出错了。再具体看了一下代码应该是没的安装语义向量模型引擎sentence-transformers导致的。 解决方案 切回到前台的Open WebUI,用管理员身份登录进去。然后点右上角的“设置”,并找到“文档”,然后在该界面上点一下右这的下载的图标,如下图所示。 若下载成功了,应该就OK了。不过,实际上我这边的情况是下载失败。所以同志还要努力。继续往下走。 文档设置中下载sentence-transformers/all-MiniLM-L6-v2失败 查看后台日志,发现报错如下 从这个报错来看,应该是open_webui/retrieval/utils.py的get_model_path()在调用snapshot_download()连不上huggingface导致的。因此,我们需要再设置一下代码,翻个墙,或者设置一下huggingface的镜像站。 后台关了Open WebUI,然后设置一下代理及huggingface镜像。 设置代理 设置huggingface镜像export HF_ENDPOINT=https://hf-mirror.com 重启 Open WebUI ./start.sh 后再chat with 附件,一切正常。 以下是我的start.sh的代码:
同之前的Open WebUI联网搜索功能异常问题一样,一样步骤很简单。 下载STT模型 先得启用一下Open WebUI的STT(Speech To Text)语音转文本的功能,用管理员登录进去,然后点OpenWebUI的右上角Admin Panel(管理面板)设置,再到Setting的Audio设置项,如下图所示,先在STT Model那里填一个wisper模型名,如:base(截图的时候忘记填了),然后点击一下那个下载按钮。 若是点了后没任何响应,看下后台的日志,如果碰到诸如此类的报错: 那我只能说,你没有任何错,只是错在你身处的这个网络(需要科学上网)在服务器上,执行下面的命令设置一下huggingface的镜像站,然后再重新下载一下。 若是还是没有任何响应,确认一下STT Model那里的wisper模型名有没有填,有填的话填的对不对。 解决http地址无法访问麦克风问题 http网页默认情况下是不允许开麦克风和摄像头的,但是如果是为了测试功能,我们可以通过如下步骤在chrome里来给打开 然后在Insecure origins treated as secure里将默认的Disabled改成Enabled,并将你要访问的地址填一下到里边(可以多个)。填完后会提示你重启浏览器生效。重启后你就可以在这个地址开麦克风、摄像头了。 解决了http无法开麦克风问题后,到Open WebUI就可以录音频的方式去问问题了。
截了个RealChar的Conversation对话的界面图片,想让豆包帮我生成一个代码,要求跟他长的差不多 Round 1 在豆包那里上传图片,然后跟它说:请帮我实现这样的一个html 说明: 出来的结果看如下 Round 2 输入:input-area里少了三个图标:加号图像,emoji图标和麦克风图标,并且send-button没有在这三个图标一排的最右边。同时,整个input-area需要固定在整个页面的最下方,中间的一整块区域都给chat-messages输出:代码省略,直接看图 Round 3 输入:整个页面的宽度不对了,差不多要现在2倍宽输出: 关键修改:在 .chat-container 样式中,将 max-width 从 800px 改为 1600px,确保页面容器宽度扩大。同时保留 width: 100% 保证响应式,使页面在不同设备上适配,既满足更宽显示需求,又保持移动端兼容性。在 .chat-container 样式中,将 max-width 从 800px 改为 1600px,确保页面容器宽度扩大。同时保留 width: 100% 保证响应式,使页面在不同设备上适配,既满足更宽显示需求,又保持移动端兼容性。 样子有点像了,但是整个宽度一下子超级宽了,代码和图都省略 Round 4 输入:把chat-container的max-width改回800px。然后再确认一下输入图片里input-area的“加号”、”笑脸“、”麦克风“,以及input button的位置及样式,需要做成跟图片里一样,跟那个input-area里的input是两排的。 把chat-container的max-width改回800px。然后再确认一下输入图片里input-area的“加号”、”笑脸“、”麦克风“,以及input button的位置及样式,需要做成跟图片里一样,跟那个input-area里的input是两排的。输出:好的,用户现在要求调整 input-area 的布局,做成两排。首先,分析原图结构,输入区的图标和输入框、发送按钮可能需要分两行。使用 flex 布局,调整 input-area 的结构。步骤:修改 input-area 的 HTML 结构,将图标分为一排,输入框和发送按钮另一排。使用 […]
问题现象 大模型的联网搜索功能本质上是将模型的自然语言处理能力与传统搜索引擎技术相结合,实现获取联网信息并生成可靠答案的能力。但是在Open WebUI默认安装下该功能是不可用的,需要你自己来配置一下。 设置Open WebUI 在Open WebUI前端,用管理员账号登录进去,然后点右上角的设置,然后找到“联网搜索”将联网搜索功能启用一下,然后将你自己的密钥及账号信息填进去即可。 建议选择用Goole的PSE(Programmable Search Engine),因为我试着去注册了几个搜索引擎,同样是有free trial,只有Google的这个没让我绑定信用卡。 以Google PSE为例从头申请一个Google PSE的API。 然后把这个API密钥和搜索引擎ID填到Open WebUI的设置项中,保存并刷新Open WebUI,然后联网搜索就可以工作了。 注意事项 一、免费版的Google PSE的每天有使用限制(点开你创建的自定义搜索引擎后,在那里会显示),当前的限制是每次1万次。二、要使用Google PSE就意味着你的服务器是支持科学上网的,不然连不上Google一切白扯。
问题现象 整个think标签不对,如下图: 解决方案1:失败 参考:https://github.com/open-webui/open-webui/discussions/11348This might be a quick fix:in backend/open_webui/utils/middleware.py , line 1313, function tag_content_handler :change the elif to if .找到middlewares.py :1313 定位到那个elif,改成if重启openwebui,问题依旧。 解决方案2:OK 参考:https://github.com/open-webui/open-webui/issues/11259With TabbyAPI, I’m able to get the “normal” tag when removing it from the chat template.The end looks like this after the modification:{%- if add_generation_prompt %}\n […]
相比于ollama, llama.cpp等框架, vllm是一个可以产品化部署的方案,适用于需要大规模部署和高并发推理的场景,采用 PagedAttention 技术,能够有效减少内存碎片,提高内存利用率,从而显著提升推理速度。在处理长序列输入时,性能优势更为明显。因此,今天先用vllm来验证一下QWQ32B 的情况。 硬件环境 租的AutoDL的GPU服务器做的测试 •软件环境 PyTorch 2.5.1、Python 3.12(ubuntu22.04)、Cuda 12.1 •硬件环境 ○GPU:RTX 4090(24GB) * 2 ○CPU:64 vCPU Intel(R) Xeon(R) Gold 6430 ○内存:480G(至少需要382G) ○硬盘:1.8T(实际使用需要380G左右) 一、虚拟环境 conda create –prefix=/root/autodl-tmp/jacky/env/vllm python==3.12.3 conda activate /root/autodl-tmp/jacky/envs/vllm/ pip install vllm 二、安装 vLLM export VLLM_VERSION=0.6.1.post1 export PYTHON_VERSION=310 pip install https://github.com/vllm-project/vllm/releases/download/v${VLLM_VERSION}/vllm-${VLLM_VERSION}+cu118-cp${PYTHON_VERSION}-cp${PYTHON_VERSION}-manylinux1_x86_64.whl –extra-index-url https://download.pytorch.org/whl/cu118 三、从huggingface下载模型 计划测试 […]
一、说在前面 今天有一个朋友在一个群里提到了N年前经常用的一个软件:UC浏览器,一个子勾起了当年无数的回忆。于是又让我想起来今年过年、在家里无聊时安装的这个最低配的Deepseek版本。晚上在家无的事事,那就把我当初安装时写的笔记稍作整理,放出来跟大家分享一下。 特别说明:这个百无禁忌版本的Deepseek是为了让大家能体验到原汁原味的大模型的输出,不是让你去做坏事的哈,并且这个东西只可自己学习时用,不可对外提供接口,因为这是违反国家政策的。不过另外一句话来讲,事实上有许多东西都是:我可能一辈子都不会去用,但是我不能没有它(卖保险的同学听到这句话,一下子泪目,您说的太对了,明天咱们聊聊?)。 安装要求:1、操作系统:据说Windows Family版本会有一些问题,但是我没试过。不太清楚什么情况。当然,如果是Linux操作系统,那只要你更新到新一点的版本,随便哪个发行版都不会有问题。2、硬盘要求: 版本 内存 CPU 显卡 适用场景 1.5B 8GB+ i5/Ryzen 5 集成显卡或低端独显 基础对话、简单文本生成 7B/8B 16GB+(建议24GB) i7/Ryzen 7 RTX 3060及以上 通用对话、代码生成 14B 32GB+ i9/Ryzen 9 RTX 3080/4070 长文本推理、专业应用 32B 64GB+ 高性能多核服务器 双卡专业级GPU 科研计算、复杂检索 70B 128GB+ 服务器级多核系统 多卡GPU集群 企业级私有化部署 看完这些要求后,如果你的电脑满足要求,那你可以考虑继续往下看,如果不满足要求,那就不要浪费你自己的时间了。 以下是我的8年前配的笔记本配置,我选择的模型是8B,但是出字速度不太行。 二、安装Ollama 官网下载频道:https://ollama.com/download ,不过实际的下载地址还是指向了github,所以不能科学上网的同学那下载的会比较郁闷,因为整个包有1G左右。当然也可以找度娘的网盘。 下载下来后,就直接默认安装即可。 安装完了会自动跳出来一个命令行,在那里敲一个: 如果返回一个版本号,那么恭喜你,安装成功! 但是,如果你跟我一样,是晚上睡觉前开的下载,然后下载完了自动关电脑的。那么你在重新开机后,可以用管理员的身份打开一个命令行,然后在那里再敲: ollama -v […]