- 博客(453)
- 收藏
- 关注
原创 【AI大模型接入SDK】ChatServer接口测试
🎬 艾莉丝的简介:共 7 个后端接口,服务基于 http‑lib 实现路由注册表格1.1.2 Apifox 环境配置配置测试环境前置 URL:,示例环境变量配置各类大模型 API‑KEY 密钥接口录入规范严格对齐 HTTP 请求方法、Path 路径参数、Body JSON 参数测试阶段无需维护 Mock 响应结构体,仅校验请求可达性、返回数据有效性两个核心指标Path 参数禁止携带变量符号填入实际参数值,该符号为 Apifox 变量标识,直接填入会造成参数解析失败1.1.3 会话
2026-11-01 02:24:41
613
29
原创 【AI大模型接入SDK】ChatServer问题修复
gflags 库内部已经内置versionflag,业务代码 main 中重复定义 version 产生符号冲突。日志埋点打印:关键节点输出 INFO 日志,判断代码执行流截止位置,优先使用,成本最低。gdb 调试:Debug 模式编译,保留调试符号;break 设置断点,run 运行,p 打印变量,n 单步,s 跳入函数;查看指针是否为 nullptr,定位空指针访问。
2026-11-01 02:23:12
135
28
原创 【AI大模型接入SDK】ChatServer构建(CMakeList.txt)
排查步骤,确认库文件已经部署确认写在之前库名不要写lib前缀,不要写.a后缀现象:编译cpp源文件正常,链接报类、函数未定义(例如日志器、ChatSDK相关符号找不到)根因:没有链接自研SDK静态库,或者静态库编译ABI不匹配(Debug/Release模式不一致,C++标准不一致)解决方案:确认加入自研库,确认SDK库编译C++标准、构建类型和当前项目完全一致。
2026-10-27 20:15:49
1762
52
原创 【AI大模型接入SDK】Trae生成main方法
文件位置 ChatServer/ChatServer.h// 网络服务配置// LLM模型公共参数// 云端模型密钥,从环境变量读取// Ollama本地大模型配置,由gflags参数传入public:private:// http路由、业务处理成员省略// 网络服务参数DEFINE_string(host, "0.0.0.0", "服务器绑定监听地址");DEFINE_int32(port, 8080, "HTTP服务监听端口");
2026-10-27 20:13:43
1284
36
原创 【AI大模型接入SDK】Trae生成代码介绍
Trae IDE 基于 VSCode 内核深度改造,深度集成 AI 能力,具备智能问答、代码补全、Agent 自动编程能力。官方资源官网:https://www.trae.ai/使用手册:https://docs.trae.ai/ide/what-is-trae?_lang=zh下载地址:https://www.trae.ai/download远程开发能力:支持 Remote SSH,直接连接远程 Linux 主机开发;输入格式ssh 用户名@IP地址 -A。
2026-10-22 21:42:28
1822
57
原创 【AI大模型接入SDK】ChatServer 路由规则绑定
/ 服务器配置结构体// ollama大模型配置// ollama模型名称// ollama模型描述// ollama API地址// http服务监听地址// http服务监听端口public:// 启动服务器// 停止服务器// 查询服务器运行状态private:// 通用响应构造工具函数// 7个业务请求处理回调函数// 新增:HTTP路由规则绑定函数private:// 服务器配置信息// httplib HTTP服务实例。
2026-10-22 20:59:55
2400
61
原创 【AI大模型接入SDK】ChatServer接口实现
HTTP 状态码业务含义200请求业务处理成功400客户端参数错误:JSON 解析失败、字段缺失 / 为空404会话 ID 不存在(删除会话、获取历史消息)500服务端内部业务错误:创建会话失败、AI 模型调用失败提取工具函数,统一构造 success/message 格式 JSON,消除各个接口重复序列化代码。所有私有接口处理函数不会被外部直接调用,声明在 class private 域。
2026-10-19 21:28:45
559
36
原创 【AI大模型接入SDK】ChatServer 启动与停止模块实现
构造函数:接收服务器配置结构体析构函数:资源回收对外成员函数:启动 HTTP 服务,子线程运行监听逻辑:停止 HTTP 服务:获取服务当前运行状态私有成员:保存传入的服务 IP、端口配置:httplib 服务智能指针对象:聊天 SDK 智能指针:原子布尔标记,标记服务运行状态,解决多线程读写竞争public:// 启动服务器// 停止服务器// 获取运行状态private:// 原子变量,多线程安全标记运行状态。
2026-10-19 21:26:45
2003
42
原创 2026 开发者远程软件专项横评:从终端到端口映射,8 件事看清 UU远程与其他远程工具的真实差距
远程控制软件的横评见过不少,。开发者用远控的姿势完全是另一回事——,桌面清不清晰反而排在后面。把开发者的日常摊开看,远控软件要接住的活儿非常具体:凌晨服务挂了要在手机上进 shell;本地 IDE 要访问被控机的内网端口;三个 G 的 dump 要立刻搬回来;周五晚上要把休眠的测试机叫醒跑构建。这些事,一款一款试过来才知道,市面上的软件差距比想象中大得多——。所以这篇做一场专项横评:只比开发者用得上的 8 件事,UU 远程、ToDesk、向日葵三款逐一过堂。。断在哪、为什么断,正文逐项拆。
2026-10-17 14:13:31
14285
43
原创 【AI大模型接入SDK】ChatServer HTTP接口模块实现总览
🎬 艾莉丝的简介:1.2 公共工具函数实现 buildResponse2 ~> 各个HTTP接口业务实现2.1 创建会话接口 handleCreateSessionRequest请求信息URL:参数:http body JSON, string 模型名称返回200;参数解析错误返回400;内部创建会话失败返回500返回JSON结构业务执行流程获取request.body,使用反序列化请求体JSON;解析失败调用buildResponse返回错误,设置status=40
2026-10-17 00:35:24
2110
31
原创 【AI大模型接入SDK】ChatServer接口设计规范
ChatServer 聊天服务核心业务能力,客户端通过 HTTP 接口与服务端完成交互,实现前后端分离架构。获取会话列表获取支持的模型列表新建会话发送消息(支持全量返回、SSE 流式返回两种模式)获取会话历史消息删除会话非流式接口 HTTP 返回状态码均为200 OK,业务成功失败通过 JSON 内部布尔 / 错误码字段区分;所有非流式接口请求、响应均使用 JSON 格式。GET请求体:无GET请求体:无POST请求体。
2026-10-17 00:34:30
2988
29
原创 【AI大模型接入SDK】ChatServer 整体初始化概述
ChatServer 是基于httplib实现的 HTTP 服务层,作为客户端浏览器与底层 ChatSDK 大模型能力之间的中转层。项目目录约束:ChatServer 目录与sdktest目录平级,包含头文件、实现文件。前置依赖:ChatSDK 库执行,将头文件、动态 / 静态库安装至系统目录,可使用尖括号<>引入 SDK 头文件。核心职责接收 HTTP 客户端请求;读取服务器配置与模型参数;完成 ChatSDK 实例初始化,组装各厂商大模型配置;
2026-10-11 14:38:58
3329
42
原创 【Qt】系统相关:多线程-条件变量与信号量
适用场景:线程等待某个逻辑条件成立才继续运行,生产者‑消费者模型。依赖:必须绑定互斥锁 QMutex。状态条件是否成立。
2026-10-11 14:37:58
2334
43
原创 【AI大模型接入SDK】ChatServer项目整体概述与系统架构
基于已封装完成的 ChatSDK,开发网页版智能聊天助手,对标豆包、DeepSeek 网页对话产品。项目分为两大组成部分:ChatServer 后端服务器、Web 前端页面。核心开发重心:ChatServer 后端服务;Web 前端由工具生成。ChatSDK 职责:完成与各类大模型底层交互逻辑,上层业务由 ChatServer 实现。
2026-10-06 00:55:59
954
49
原创 【AI大模型接入SDK】C++ ChatSDK使用手册
ChatSDK 是基于 C++ 实现的大模型接入静态库,编译产物为静态库。项目源码仓库:https://gitee.com/zhibite-edu/ai-model-acess-tech将编译完成的静态库配合头文件、CMake 脚本、使用文档托管至代码仓库,降低第三方使用者接入成本。ChatSDK作为外观入口,隔离内部复杂的会话管理、模型适配、持久化逻辑。抽象接口隔离不同大模型的差异,新增模型只需要新增子类实现,上层调用无需修改。
2026-10-06 00:54:36
2837
35
原创 【QT】系统相关:QT中的锁
使用 QMutex 必须保证多线程操作同一个锁实例,static 成员是常用实现方式。wait()作用:主线程阻塞,等待子线程执行完毕;不 wait 直接读取共享变量会读到未计算完成的中间值。num++不是原子操作,是线程不安全典型案例。优先使用 RAII 守卫类,不要裸写 lock/unlock,规避锁泄漏。QReadWriteLock 优势:少读多写场景提升并发吞吐量;写的时候所有读全部阻塞。锁泄漏:锁加完之后没有释放,会造成其他线程永久阻塞。
2026-10-02 06:37:54
4010
29
原创 【QT】系统相关:多线程QThread基础
🎬 艾莉丝的简介:2.2.2 thread.cpp(线程子类实现)2.2.3 widget.h(主窗口头文件)2.2.4 widget.cpp(主窗口实现)2.3 程序时序流程Widget 构造函数执行,调用,操作系统创建子线程。子线程调度执行,循环执行,每 1 秒发射信号。信号跨线程投递,放入主线程事件队列。主线程事件循环取出事件,执行槽函数,更新 LCD 数字。for 循环执行 10 次结束,函数 return;线程结束,发射信号。3 ~> Qt 客户端多线程应用场景
2026-10-02 06:31:39
648
36
原创 【AI大模型接入SDK】ChatSDK:CMake构建静态库完整实现
🎬 艾莉丝的简介:1.2 两种源文件管理方式1.2.1 手动枚举源文件原理:在中显式罗列全部源码。优点:编译文件清单清晰可控。缺点:新增源文件必须手动修改 CMakeLists.txt 添加,遗忘会导致新增文件不参与编译。1.2.2 file (GLOB_RECURSE) 自动收集源码原理:递归遍历指定目录,通配符匹配后缀文件,存入 CMake 变量。1.3 sdk/CMakeLists.txt 完整正确代码关键字说明:构建静态库,产物。:本库编译、外部使用者编译
2026-09-30 02:13:22
6944
43
原创 【AI大模型接入SDK】ChatSDK 集成测试概述
验证ChatSDK整体流程正确性,间接校验会话管理模块、数据持久化模块(SQLite 存储)功能正常。完成云端 API 模型、本地 Ollama 模型的初始化、会话创建、消息发送、全量应答、历史消息读取完整链路测试。ChatSDK内部组合LLMManager,模块之间强耦合。/*** @brief 批量初始化多个模型* @param configs 模型配置对象vector容器* @return 初始化成功返回true*/// 注册模型提供者// 完成模型初始化。
2026-09-30 02:05:39
5848
24
原创 【AI大模型接入SDK】ChatSDK整体实现
unique_ptr是独占所有权智能指针,禁止拷贝构造、拷贝赋值,只允许移动语义std::move。即使子类指针可以隐式转换为基类裸指针,不会隐式转换为,必须显式std::move。std::move只是将左值强制转换为右值引用,本身不做内存释放;移动之后源对象变为空。
2026-09-27 11:58:46
1503
46
原创 【AI大模型接入SDK】ChatSDK架构设计与实现
SDK(Software Development Kit,软件开发工具包):面向开发者的功能工具集合,类比程序员的工具箱,用于快速实现特定业务能力,屏蔽底层复杂实现细节,降低开发接入成本。SDK 标准组成:库文件:已经实现业务逻辑的编译好的代码,分为静态库(.lib.a)、动态库(.dll.so开发者通过头文件获知对外暴露的类、函数接口。API 接口:SDK 对外暴露调用入口,规定调用参数、返回值,是 SDK 的调用契约。开发文档:接口说明、配置说明、使用约束。
2026-09-27 11:50:32
1394
30
原创 【AI大模型接入SDK】session管理和数据管理结合
🎬 艾莉丝的简介:核心对外接口1.2 模块整合核心设计思想1.2.1 组合关系设计内部以成员对象方式持有实例,而非继承。构造函数:初始化流程:构造函数初始化,打开 SQLite 数据库,自动创建两张数据表。启动阶段调用,将数据库全部会话加载到内存哈希表,完成冷启动数据加载。1.2.2 锁策略与死锁规避禁止持有锁的同时调用接口,会造成嵌套锁,存在死锁风险。统一策略:操作内存集合时加锁,完成内存修改后立刻释放互斥锁,再调用数据库持久化接口。摒弃作用域自动解锁,改
2026-09-23 17:33:29
2210
29
原创 【AI大模型接入SDK】SQLite数据持久化模块整体需求
/ 会话信息//会话唯一ID//会话绑定的大模型名称//会话下全部消息,内存缓存,数据库分表存储//会话创建时间戳//会话最后更新时间戳{}// 消息结构体//消息唯一ID//角色 user / assistant / system//消息文本内容//消息发送时间戳{}为什么会话和消息分两张表存储?一对多关系:一个Session对应多条Message;减少冗余,会话元数据只存储一份;利用外键级联删除保证数据一致性。
2026-09-23 17:32:16
1516
39
原创 【AI大模型接入SDK】SQLite C API编程实战:学生表CRUD案例
🎬 艾莉丝的简介:创建 / 打开 SQLite 数据库文件创建学生表CRUD 操作:插入学生、按姓名单条查询、查询全部学生、按姓名更新、按姓名删除RAII 封装:C++ 类构造打开数据库,析构自动关闭数据库连接1.4 SQLite C API 标准执行流程构造 SQL 语句:使用占位符,不要拼接用户输入字符串。预处理 SQL:调用,生成预处理对象。该函数将 SQL 编译成虚拟机字节码,后续可以重复执行。绑定参数:占位符下标从 1 开始;:告知 SQLite 内部复制字符串副本,函
2026-09-20 17:27:47
2776
37
原创 【AI大模型接入SDK】SQLite基础概念与C的API开发
索引两套规则极易混淆从 1 开始从 0 开始资源生命周期必须调用释放;未 finalize 直接返回关闭失败。出错返回的errmsg必须使用释放堆内存,不能直接 free。两种执行 API 选型:适合一次性简单 SQL,适合 DDL、批量无返回 DML;多条 SQL 字符串一次性执行。:适合循环批量插入、动态参数查询,有效防御 SQL 注入攻击,性能更好。的 destructor 参数:字符串生命周期长于 stmt,SQLite 不接管内存。
2026-09-20 17:08:43
1417
26
原创 【AI大模型接入SDK】SQLite数据库基础概述
SQLite 是开源、轻量级、零配置、无服务器、自包含、事务性、支持标准 SQL、跨平台的关系型数据库引擎,以 C 库形式实现,源代码无版权限制。核心特性轻量级:编译后库文件仅数百 KB,资源占用极低。无服务器:不存在独立后台服务进程,应用程序直接调用库函数读写磁盘数据库文件。零配置:无需安装、启停、配置数据库服务。自包含:全部数据库内容(表、索引、元数据、数据)存放在**单个****.db**后缀磁盘文件,文件跨操作系统平台。
2026-09-18 22:26:44
1189
33
原创 【AI大模型接入SDK】C++会话管理模块(SessionManager)设计与实现
SQLite 是开源、轻量级、零配置、无服务器、自包含、事务性、支持标准 SQL、跨平台的关系型数据库引擎,以 C 库形式实现,源代码无版权限制。核心特性轻量级:编译后库文件仅数百 KB,资源占用极低。无服务器:不存在独立后台服务进程,应用程序直接调用库函数读写磁盘数据库文件。零配置:无需安装、启停、配置数据库服务。自包含:全部数据库内容(表、索引、元数据、数据)存放在**单个****.db**后缀磁盘文件,文件跨操作系统平台。
2026-09-18 20:48:06
3222
24
原创 【AI大模型接入SDK】LLM会话管理模块设计
会话定义:会话是用户与大语言模型之间一组连续交互集合,维护对话上下文、状态信息,保障对话连贯性与一致性。模型侧特性:大模型本身不会保存会话状态与历史上下文,会话数据必须由业务代码手动维护。业务背景问题多轮对话消息如何持久存储;模型无记忆,调用模型时必须携带历史消息上下文;区分多条消息归属哪一次对话;在全部消息集合中快速提取某一次会话的全部历史。单条聊天消息,保存一条对话的完整信息。// 消息唯一ID// 角色 user / assistant / system// 消息文本内容{}
2026-09-16 11:46:50
719
33
原创 【Git:综合复盘】Git 原理与使用
🎬 艾莉丝的简介:版本控制器是记录文件每一次改动与版本迭代的管理系统,核心解决两类问题:Git 是当前最主流的分布式版本控制系统,可管理所有格式文件,核心价值是管理软件开发的源代码。Git 是开源工具,支持 Linux、Unix、Mac、Windows 全平台。3.2 Linux-ubuntu 系统3.3 Windows 系统通过官方安装包安装,安装后在 Git Bash 终端中执行命令。仓库(Repository)是进行版本控制的文件目录,创建命令需在目标目录下执行:执行后目录下会生成隐藏的
2026-09-16 11:28:02
1929
39
原创 【AI大模型接入SDK】LLMManager类架构与智能指针选型
LLMManager 是大语言模型 SDK 的统一管理入口,负责 LLM 提供者的生命周期托管、注册状态维护、可用性校验与请求转发。私有成员::键为模型唯一名称,值为模型提供者实例的独占智能指针,所有权由 LLMManager 全权持有:键为模型名称,值为模型元信息集合,存储描述、端点、可用状态等数据public:// 注册LLM提供者实例// @param modelName 模型唯一标识// @param provider 模型提供者独占指针。
2026-09-14 10:09:02
1486
42
原创 【AI大模型接入SDK】LLMManager架构设计与实现
功能:将具体模型的实现类实例注册到管理容器,是模型纳入统一管理的入口参数:modelName:模型唯一标识名称,作为后续调用的索引键provider:模型提供者实例的智能指针,必须是 LLMProvider 子类的实例约束:重复注册同一名称的模型会覆盖原有实例。
2026-09-14 10:05:20
1711
22
原创 【AI大模型接入SDK】Ollama API 流式增量响应
🎬 艾莉丝的简介:1.2.2 curl 参数释义:静默模式,屏蔽进度条、连接日志,仅输出响应内容:指定 HTTP 请求方法为 POST:请求头,告知服务端请求体为 JSON 格式:携带 POST 请求体 payload;bash 环境使用单引号包裹 JSON,避免 shell 解析 JSON 内部双引号1.2.3 不同 stream 参数终端表现:终端逐行吐出分片 JSON,模型边生成边返回数据:阻塞等待模型全部推理完成,一次性输出完整 JSON 报文1.3 Ollama 流式响
2026-09-12 12:24:57
1826
23
原创 【AI大模型接入SDK】Ollama API 全量响应实现
🎬 艾莉丝的简介:全量模式下返回单一 JSON 对象,标准结构如下:2.4 响应核心字段说明:本次响应使用的模型名称。:响应生成时间戳,ISO 8601 格式。:模型回复消息对象,包含 与 字段。:布尔类型,标识响应是否完成,全量模式下恒为 。:结束原因, 表示正常结束。:请求总耗时,单位纳秒。:模型加载耗时,单位纳秒。:输入 Prompt 的 Token 数量。:输入 Prompt 推理耗时,单位纳秒。:输出回复的 Token 数量。:输出生成耗时,单位纳秒。3 ~>
2026-09-12 12:23:39
8369
33
原创 【AI大模型接入SDK】Ollama大模型接入架构对比与实现
public:// 初始化模型// 检测模型是否可用// 获取模型名称// 获取模型描述// 发送消息 - 全量同步返回// 发送消息 - 流式增量返回protected:// 模型名称// 模型描述// Ollama服务端点地址// 模型可用性标记。
2026-09-10 12:10:58
1543
38
原创 【AI大模型接入SDK】Ollama跨平台部署与运维指南
🎬 艾莉丝的简介:Ollama 是一款跨平台的本地大语言模型运行与管理工具,可将本地部署的大模型封装为标准化推理服务,支持命令行、图形界面、HTTP API 三类交互方式,实现大模型的本地化离线运行、全生命周期管理与二次集成。官方提供标准化一键安装脚本,在终端执行以下命令即可完成全自动化安装:安装完成后,Ollama 服务将自动以守护进程形式在后台启动。安装完成后执行以下命令验证安装状态与版本:示例输出:2.2.2 端口与监听规则Ollama 服务默认监听本地回环地址 的 端口可通过 ne
2026-09-10 12:00:24
2306
28
原创 【AI大模型接入SDK】Ollama本地大语言模型部署
🎬 艾莉丝的简介:需结合业务功能需求与本地硬件配置(显存、内存、算力),选择适配参数量与量化等级的模型。下载的模型并非可执行程序,而是由权重参数文件、配置文件、词表文件等组成的文件集合。以 Ollama 本地存储为例,模型文件分为两类目录:推理引擎是大语言模型的执行载体,负责完成模型权重加载、输入文本预处理、张量数学运算、输出文本生成等全推理流程。同时支持手动二进制安装、Docker 容器部署等方式2.4 常用操作指令命令功能说明从 Ollama 官方模型库拉取指定模型到本
2026-09-08 16:28:05
1443
29
原创 【AI大模型接入SDK】大模型部署方案:云端接入与本地部署对比分析
云端大模型指模型权重存储、推理计算全流程均运行在厂商官方服务器集群中,开发者通过 HTTP API 协议向服务端发送推理请求,解析响应结果后完成业务集成。私有化部署指企业将大模型部署在自身本地机房或私有云环境中,不依赖公有云第三方推理服务,可根据业务场景对模型进行微调与深度定制,实现对大模型全生命周期、全调用链路的完全掌控,核心目标是保障数据安全与业务适配性。普通个人用户、非敏感业务场景:优先选择云端大模型服务,是最简单、综合成本最低的选型方案。
2026-09-08 16:19:45
1481
36
原创 【AI大模型接入SDK】Gemini模型接入知识体系
OpenAI 兼容 API:厂商降低开发者迁移成本的获客手段,实现现有 OpenAI 技术栈零成本切换;长期依赖会形成品牌替代效应,难以构建自身技术护城河。原生 API(models.generateContent):充分释放 Gemini 多模态、函数调用、代码执行等原生能力,适配垂直场景深度定制,是厂商实现技术自主、构建生态护城河的核心方案。行业演进规律:大模型厂商普遍遵循「追随者→挑战者→引领者」的 API 演进路径,兼容期快速获客,成熟期推出原生标准。
2026-09-05 10:17:52
4517
36
原创 【AI大模型接入SDK】ChatGPT API
system:系统提示词,用于给模型设定角色与行为规范;新版模型推荐使用developer替代developer:开发者指令,优先级高于历史消息,用于注入模型必须遵循的规则user:用户输入消息,即终端用户向模型提交的提问与内容assistant:助手回复消息,即模型生成的回答内容tool:工具调用结果,用于将外部工具执行结果返回给模型。
2026-09-05 10:07:21
2582
44
原创 【AI大模型接入SDK】ChatGPT 模型接入
整体采用抽象提供者模式,定义(抽象基类,文档中也记作)作为统一接入接口,所有大语言模型厂商均实现该接口的标准方法。已完成 DeepSeek 模型的全量接入(包含初始化、全量响应、流式响应完整逻辑),ChatGPT 与 Gemini 接入可复用约 80% 的代码。代码复用方案:直接复制 DeepSeekProvider 的头文件与源文件,仅修改类名、API 根端点、请求参数、响应 JSON 解析逻辑即可,开发效率较高。
2026-09-03 18:02:17
2602
29
这是比特的C语言贪吃蛇课件的压缩包,可以用来学习数据结构以及通过做贪吃蛇这个项目巩固前面链表的学习
2025-09-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅