百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

手把手教你搭建免费的大模型应用

myzbx 2025-01-04 21:51 15 浏览

许多用户因为大模型高昂的调用费用和技术门槛而倍感困扰,即便有众多创新的想法,也往往因为无法顺利实现而受阻。

本文将指导您亲手搭建属于自己的本地大模型服务,让您无拘无束地实现创意,并享受低成本的便利。更重要的是,您还将能够拓展更多开源大模型,为生活和工作效率带来质的飞跃。

一、使用效果

本地部署 LLaMA2-7B,模型大小:3.8GB,效果如下:


1、示例一:who are you

>>> who are you
I'm LLaMA, an AI assistant developed by Meta AI that can understand and respond to human input in a conversational manner. I'm here to help you with any
questions or topics you'd like to discuss! How can I assist you today?

2、示例二:Start work on Monday, a week full of vitality and advantages.

>>> Start work on Monday, a week full of vitality and advantages.
Sounds great! I'm glad to hear that you have a productive week ahead of you. Here are some positive affirmations to help you start your week on a high note:


* I am excited and ready to tackle the challenges of the week ahead.
* I am confident in my abilities and know that I can accomplish great things.
* I embrace this week with an open mind and heart, ready to learn and grow.
* I am grateful for the opportunities that lie ahead and look forward to making the most of them.
* I am energized and motivated to make this week a successful and fulfilling one.


Remember, the power to make your week great lies within you. Stay positive, stay focused, and always believe in yourself!

3、示例三:你会中文吗

>>> 你会中文吗
我們可以進行中文交流,但是我的語言能力 limited,因為我的訓練只包括一些基本的中文句子和phrases。如果你有任何特定的問題或話題想要談論,我將try my best to help you。

二、仓库地址

使用 Llama 2、Mistral、Gemma 和其他大型语言模型。

https://github.com/jmorganca/ollama

三、模型库

1、模型库地址

https://ollama.com/library/llama2

Model

Parameters

Size

Llama 2

7B

3.8GB

Mistral

7B

4.1GB

Dolphin Phi

2.7B

1.6GB

Phi-2

2.7B

1.7GB

Neural Chat

7B

4.1GB

Starling

7B

4.1GB

Code Llama

7B

3.8GB

Llama 2 Uncensored

7B

3.8GB

Llama 2 13B

13B

7.3GB

Llama 2 70B

70B

39GB

Orca Mini

3B

1.9GB

Vicuna

7B

3.8GB

LLaVA

7B

4.5GB

2、内存要求

  • 7b 模型通常需要至少 8GB 的 RAM;
  • 13b 模型通常需要至少 16GB 的 RAM;
  • 70b 模型通常需要至少 64GB 的 RAM;

四、代码示例

1、下载源码

按照你的操作系统选择不同的下载地址。

# macOS
https://ollama.com/download/Ollama-darwin.zip

# Windows preview
https://ollama.com/download/OllamaSetup.exe

# Linux
curl -fsSL https://ollama.com/install.sh | sh

2、启动服务

ollama run llama2

3、本地请求

本地启动服务后,可通过 API 请求数据:

curl -X POST http://localhost:11434/api/generate -d '{
  "model": "llama2",
  "prompt":"Why is the sky blue?"
 }'

4、API 数据

API 数据按照流式返回:

{"model":"llama2","created_at":"2023-12-25T02:23:41.333728Z","response":"\n","done":false}
{"model":"llama2","created_at":"2023-12-25T02:23:41.587704Z","response":"The","done":false}
{"model":"llama2","created_at":"2023-12-25T02:23:41.787339Z","response":" sky","done":false}
{"model":"llama2","created_at":"2023-12-25T02:23:41.97912Z","response":" appears","done":false}
.....
{"model":"llama2","created_at":"2023-12-25T02:24:23.541595Z","response":".","done":false}
{"model":"llama2","created_at":"2023-12-25T02:24:23.755337Z","response":"","done":true,"context":[518,25580,29962,3532,14816,29903,29958,5299,829,14816,29903,6778,13,13,11008,338,278,14744,7254,29973,518,29914,25580,29962,13,13,1576,14744,5692,7254,1363,310,263,27791,265,2000,9596,280,1141,14801,292,29889,1932,6575,4366,24395,11563,29915,29879,25005,29892,372,2094,1309,2153,21577,13206,21337,310,330,2129,1316,408,21767,307,1885,322,288,28596,29889,4525,13206,21337,14801,278,3578,297,599,18112,29892,541,896,14801,20511,313,9539,29897,281,6447,1477,29879,901,1135,5520,313,1127,29897,281,6447,1477,29879,29889,910,338,2998,408,9596,280,1141,14801,292,29889,13,13,2887,263,1121,310,445,14801,292,29892,278,7254,3578,338,29106,287,10106,278,25005,29892,6820,278,14744,967,17443,7254,2927,29889,450,2654,3578,29892,373,278,916,1361,29892,14517,7812,1549,278,25005,411,2217,14801,292,29892,607,338,2020,278,28205,5692,901,2654,1135,278,14744,29889,13,13,1576,7254,2927,310,278,14744,508,884,367,15201,491,916,13879,1316,408,21180,918,29892,19786,29892,322,4094,325,26191,297,278,25005,29892,607,508,14801,278,3578,297,1422,5837,322,7738,263,3464,310,11955,29889,2398,29892,278,1667,4556,310,278,7254,2927,310,278,14744,338,9596,280,1141,14801,292,29889],"total_duration":56899446480,"load_duration":10037867844,"prompt_eval_count":26,"prompt_eval_duration":4662218000,"eval_count":210,"eval_duration":42167419000}

5、流式输出

前端拿到数据后通过 SSE 协议进行流式输出:

SSE:Server-Sent Events (SSE) 是一种基于 HTTP 协议的服务器推送技术,它允许服务器向客户端发送数据和信息。与 WebSocket 不同,SSE 是一种单向通信方式,只有服务器可以向客户端推送消息。SSE 是 HTML5 规范的一部分,使用非常简单,主要由服务端与浏览器端的通讯协议(HTTP协议)和 EventSource 接口来处理 Server-sent events 组成,服务器端的响应的内容类型是“text/event-stream”。

6、监听数据变化

前端实现非常简单,创建一个 SSE 的实例然后监听数据的状态即可:

let reply = ''
    const evtSource = new EventSource(`${baseUrl}/chat?content=你好`);
    evtSource.onmessage = (event) => {
      //  流式数据最后一条的状态为[DONE]代表结束返回
      if(event.data === '[DONE]') {
        console.log(`回答完毕!:${reply}`)
      } else {
        const res = JSON.parse(event.data)
        reply += res.choices[0].delta.content || ''
      }
    }

原创热门文章分享

OpenAI Sora 视频生成快速掌握

破局:技术视野与规划

10 分钟轻松搞定 Web 在线文档

相关推荐

为什么钟表的指针是从左向右顺时针转?

所有的钟表指针都是从左向右转的,所以我们就用它来表示旋转方向了。那么,为什么钟表都是从左向右转呢?正着转也好,反着转也好,一圈不都是12小时吗?这就要从钟表的前身说起了。在钟表出现之前,人们使用过一种...

牛人将电子钟改造高精度时钟,日误差0.26秒!解决走时不准通病

家里有好多个电子钟,精度各种参差不齐,然后走时就是各种混乱,是可忍孰不可忍……自打发现8025这个好玩意儿之后,就决定不忍了。第一个上场的聪明钟,为啥叫聪明钟然后还走的不准。三节电池供电,其中3V给主...

篮球裁判手势图解之计时钟、得分替换和暂停手势

▋篮球裁判手势图解之计时钟手势停止计时钟手势,伸开手掌,垂直举过头部。犯规停止计时钟手势,一拳握紧,垂直举过头部。计时开始手势,用手做劈柴动作,将垂直举过头部的手放下。▋篮球裁判手势图解之得分手势1...

罗马数字的起源与用途

一、罗马数字的诞生与进化罗马数字起源于古罗马帝国,拥有一个漫长而复杂的历史,始于公元前8世纪至9世纪,与古罗马帝国在帕兰丁山(PalantineHill)周围建立的时间大致相同。不过,罗马数...

基于 Arduino Nano R3 的红外遥控数字时钟

由于在ArduinoNano上没有足够的引脚来编写代码,该项目只有有限的功能(即使没有设置时间的设施)。通过添加红外线遥控器,我可以灵活地整合所有需要的功能(如果需要,可能会更多),不需要额外的...

大班必备33首数字歌,轻松学数学

适合大班宝贝的33首数学歌,让孩子们在玩中学,通过好玩、好记的的儿歌来了解数学的知识点,轻松学数学!以上所有有关数学概念的知识点,其中包含了钟表、点数、分解组成、加减、单双数、倒数正数、凑十、方位...

11的寓意和象征

在数字的王国里,每个数字都有其独特的内涵和象征意义。今天,我们将一起探索数字11的奥秘和象征意义。这个奇特的数字,不仅在我们的日常生活中扮演着重要的角色,而且在神秘主义和宗教中也占有的一席之地。首先,...

基于TM1637的数字时钟

方案介绍这个项目是一个原型,我将在我正在进行的其他数字时钟项目中使用。这是我计划在我的下一个数字时钟项目中使用的时间和闹钟设置机制的原型。我希望能给你提供到帮助。如果你想到任何改进,请告诉我。我会更乐...

【金龟子讲睡前故事】数字不见啦

“快做数学题!”妈妈大声吼邦邦。“啊,好烦呀!”邦邦回到屋里,对着数学练习册大声嚷嚷。考拉熊博士在邦邦的屋外听到邦邦的声音,自言自语说:“好像又在发脾气,我得去看看他。”考拉熊博士推门进去,只见邦邦大...

SE 最终幻想 35 周年,《FF7 重制版》破坏剑数字时钟 9 月发售

IT之家3月9日消息,SE今日正式开设了《最终幻想》35周年纪念网站,天野喜孝绘制官方LOGO公布!值得一提的是,索尼PlayStation游戏发布会即将于北京时间3月10...

谁说数字钟就是黑白状?他们让你改变看法

如果我们没有了钟表,你会用什么衡量时间?是利用太阳的变化还是凭猜测?之前设计癖也介绍一些有趣的钟表,像是Edelkrone设计的无表针的Oqloq钟表,也有淡化了表针概念的轨道钟表,今天再给大...

杭州元宵游玩大赏|“人体时钟”亮相文三数字生活街区,还有元宵巡游活动等你嗨

钱江晚报·小时新闻记者方力通讯员冯晨晨刘静滴答滴答,在这个时钟里面有一位虚拟的“小姐姐”。她的工作内容就是不断地把分针擦掉,然后再画上新的分针,她每画一次分针擦干净后,再画上一条新的分针,就刚...

来用PPT做一只数字时钟动画

“什么是可见性?“可见性”即指PPT动画元素中的一种。在我们之前的图文教程《动画基础扫盲课,必修!》中提到过一些常用的PPT动画元素。分别为可见性,X,Y坐标,旋转,高度和宽度。而其中所谓的“可见性”...

4060+4013+74ls161数字电子时钟仿真电路图

苹果手机桌面时钟怎么显示 苹果手机桌面时钟显示操作

苹果手机系统流畅,系统使用起来很舒适,是很多人的首选。苹果时钟可以在桌面上显示数字时钟,如果在编辑主屏幕时,不小心把时钟删掉了,要怎么恢复呢?或者想要设置时钟显示,操作是什么样的呢?苹果手机桌面时钟怎...