ChatGLM3-6B的本地api调用

news2024/11/17 8:52:07

ChatGLM3-6B的本地api调用方式

1.运行openai_api_demo路径下的openai_api.py
启动后界面:
在这里插入图片描述
注意:本地api调到的前提是——本地部署了ChatGLM3-6B,本地部署的教程可参考:
20分钟部署ChatGLM3-6B

部署了若CUDA可用,默认会以CUDA方式运行,占用显存约5.9G;若CUDA不可用,则会以内存方式进行加载,官方称CPU调用需要32G内存(实际约30G)

2.api调用
官方给了两种调用示例:
1)使用Curl进行测试:

curl -X POST “http://127.0.0.1:8000/v1/chat/completions”
-H “Content-Type: application/json”
-d “{“model”: “chatglm3-6b”, “messages”: [{“role”: “system”, “content”: “You are ChatGLM3, a large language model trained by Zhipu.AI. Follow the user’s instructions carefully. Respond using markdown.”}, {“role”: “user”, “content”: “你好,给我讲一个故事,大概100字”}], “stream”: false, “max_tokens”: 100, “temperature”: 0.8, “top_p”: 0.8}”

  1. 使用Python进行测试:

cd openai_api_demo
python openai_api_request.py

3)postman调用(推荐):
这里,我补充一个postman接口调用的方式,更能理解接口和参数分别是什么。
在这里插入图片描述

接口:

http://127.0.0.1:8000/v1/chat/completions

注意是POST方法!

传递参数:

{
“model”: “chatglm3-6b”,
“messages”: [
{
“role”: “system”,
“content”: “You are ChatGLM3, a large language model trained by Zhipu.AI. Follow the user’s instructions carefully. Respond using markdown.”
},
{
“role”: “user”,
“content”: “你好,给我讲一个故事,大概100字”
}
],
“stream”: false,
“max_tokens”: 100,
“temperature”: 0.8,
“top_p”: 0.8
}

返回结果:

{
“model”: “chatglm3-6b”,
“object”: “chat.completion”,
“choices”: [
{
“index”: 0,
“message”: {
“role”: “assistant”,
“content”: “从前,在一个遥远的国度里,有一个美丽的村庄。这个村庄里的居民过着和谐的生活,他们每天都会在村子里的广场上聚会。有一天,一位智者来到了村子的广场,他跟村民们分享了这样一个故事:\n\n从前,有一片荒芜的土地,上面长满了各种美丽的花草。有一天,一只小鸟飞过来,告诉村子里的居民们,这片土地是一个魔法之地,只要每个人都在广场上许下一个美好的愿望,魔法”,
“name”: null,
“function_call”: null
},
“finish_reason”: “stop”
}
],
“created”: 1704786453,
“usage”: {
“prompt_tokens”: 54,
“total_tokens”: 154,
“completion_tokens”: 100
}
}

可以看到,ChatGLM3-6B的默认调用接口和传递参数,及返回结果的参数与chatGLM2-6B的API有非常大的区别,并不兼容,需要有较大的修改

ChatGLM2-6B的本地api调用方式

ChatGLM2-6B在2024年已经属于过去时了,若有小伙伴有需求,可留言,我抽时间把它补充上。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1443672.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Kubernetes实战(二十六)-K8S 部署Dashboard UI

Kubernetes Dashboard是Kubernetes集群的通用、基于Web的UI。它允许用户管理集群中运行的应用程序并对其进行故障排除,以及管理集群本身。 访问到DashBoard有两种方式: 通过KubernetesAPI访问:Dashboard是Kubernetes的内置的UI插件&#xff…

第8章 智能租房——列表页

学习目标 掌握搜索房源列表页展示功能的逻辑,能够实现在列表中展示符合搜索条件的房源数据 掌握最新房源列表页展示功能的逻辑,能够运用分页插件以分页形式展示最新房源数据 掌握热点房源列表页展示功能的逻辑,能够运用分页插件以分页形式展…

《CSS 简易速速上手小册》第7章:CSS 预处理器与框架(2024 最新版)

文章目录 7.1 Sass:更高效的 CSS 编写7.1.1 基础知识7.1.2 重点案例:主题颜色和字体管理7.1.3 拓展案例 1:响应式辅助类7.1.4 拓展案例 2:深色模式支持 7.2 Bootstrap:快速原型设计和开发7.2.1 基础知识7.2.2 重点案例…

visual studio和cmake如何编译dlib库

官网 dlib C Library 对应的是最新版本,只能用到vs2015版本及以后 如果使用vs2013,所以需要下载vs2013可用的版本。 就是说dlib版本与vs版本有对应关系 所有版本 dlib C Library - Browse /dlib at SourceForge.net Releases davisking/dlib GitHu…

Trie 字典树的两种实现方式

Trie,又称字典树、单词查找树或键树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是…

Leetcode2560. 打家劫舍 IV

Every day a Leetcode 题目来源:2560. 打家劫舍 IV 解法1:二分答案 动态规划 给定数组 nums,从中选择一个长度至少为 k 的子序列 A,要求 A 中没有任何元素在 nums 中是相邻的。 最小化 max⁡(A)。 看到「最大化最小值」或者…

【Python 千题 —— 基础篇】查找年龄

Python 千题持续更新中 …… 脑图地址 👉:⭐https://twilight-fanyi.gitee.io/mind-map/Python千题.html⭐ 题目描述 题目描述 班级中有 Tom、Alan、Bob、Candy、Sandy 五个人,他们组成字典 {Tom: 23, Alan: 24, Bob: 21, Candy: 22, Sandy: 21},字典的键是姓名,字典的…

实现自定义标记

实现自定义标记 问题陈述 New Tech Book的高级管理层决定在其用JSP设计的应用程序的所有页面上显示版权信息。它们还要去如何向应用程序中添加JSP页面,可以重用显示版本信息的代码。公司的软件开发人员Jerry Smith决定用自定义标记来创建应用程序的这一部分。 解决方案 要解…

上位机图像处理和嵌入式模块部署(利用python开发软件)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 开发windows和linux软件的时候,大家一般都是习惯于用c/c语言进行开发,但是目前来说很多的开发板都是支持python语言开发的。…

Open CASCADE学习|扫掠

目录 1、BRepPrimAPI_MakePrism Draw Test Harness: C: 2、BRepPrimAPI_MakeRevol Draw Test Harness: C: 3、BRepOffsetAPI_MakePipeShell Draw Test Harness: C: Draw Test Harness:…

QXlsx Qt操作excel(2)

QXlsx 是一个用于处理Excel文件的开源C库。它允许你在你的C应用程序中读取和写入Microsoft Excel文件(.xlsx格式)。该库支持多种操作,包括创建新的工作簿、读取和写入单元格数据、格式化单元格、以及其他与Excel文件相关的功能。 关于QXlsx的…

Attention 和 Self-Attention 总结

一、Attention Attention 的核心逻辑是“从关注全部到关注重点”,将有限的注意力集中在重点信息上,从而节省资源,快速获得最有效的信息。 Attention 机制可以更加好的解决序列长距离依赖问题,并且具有并行计算能力。 Attention…

【计算几何】给定一组点的多边形面积

目录 一、说明二、有序顶点集三、无序顶点集3.1 凸多边形3.2 非凸多边形 四、结论 ​ 一、说明 计算多边形面积的方法有很多种。众所周知的多边形(如三角形、矩形、正方形、梯形等)的面积可以使用简单的数学公式计算。在这篇文章中,我将讨论…

ChatGPT高效提问—prompt常见用法(续篇八)

ChatGPT高效提问—prompt常见用法(续篇八) 1.1 对抗 ​ 对抗是一个重要主题,深入探讨了大型语言模型(LLM)的安全风险。它不仅反映了人们对LLM可能出现的风险和安全问题的理解,而且能够帮助我们识别这些潜在的风险,并通过切实可行的技术手段来规避。 ​ 截至目前,网络…

python web 框架Django学习笔记

2018年5月 python web 框架Django学习笔记 Django 架站的16堂课 MVC架构设计师大部分框架或大型程序项目中一种软件工程的架构模式,把程序或者项目分为三个主要组成部分,Model数据模型、View视图、Controller控制器。 命令及设置相关 创建数据库及中间…

【EAI 014】Gato: A Generalist Agent

论文标题:A Generalist Agent 论文作者:Scott Reed, Konrad Zolna, Emilio Parisotto, Sergio Gomez Colmenarejo, Alexander Novikov, Gabriel Barth-Maron, Mai Gimenez, Yury Sulsky, Jackie Kay, Jost Tobias Springenberg, Tom Eccles, Jake Bruce,…

车载自动化项目:Python

1. 自动化测试用的什么框架? 第一种:PythonSeleniumuittest框架 首先是拿到需求文档,基于这个需求去进行搭建。 用pytestrequestallure 这些第三方库进行编写自动化脚本。 举个例子一般的话整个的一个自动化的搭建是分为6层嘛&#xff1a…

GPIO结构

GPIO简介 GPIO(General Purpose Input Output)通用输入输出口 可配置为8种输入输出模式 引脚电平:0V~3.3V,部分引脚可容忍5V 输出模式下可控制端口输出高低电平,用以驱动LED、控制蜂鸣器、模拟通信协议输出时序等 输入模式下可读取端口的高低电平或电压&#x…

算法学习——LeetCode力扣字符串篇

算法学习——LeetCode力扣字符串篇 344. 反转字符串 344. 反转字符串 - 力扣(LeetCode) 描述 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。 不要给另外的数组分配额外的空间,你必须原地…

STM32CubeMX,定时器之定时功能,入门学习,如何设置prescaler,以及timer计算PWM输入捕获方法(重要)

频率变小,周期变长 1,参考链接(重要) STM32CubeMX——定时器之定时功能(学习使用timer定时器的设置) STM32测量PWM信息(学习使用设置pwm输入捕获) 通用定时器中两个重要参数的设置心…