【实战项目】从零实现c++ai大模型接入SDK(一) 目录一、项目背景二、名词解释三、deepseek、chatGPT、Gemini使用3.1 产品和模型3.2 deepseek的使用3.3 chatGPT的使用3.4 Gemini的使用3.5 Claude code的使用四、为什么学习通过api使用大模型五、项目功能概览六、项目架构本项目带你从零实现一个cppai项目。一、项目背景从1994年接⼊互联⽹⾄今中国互联⽹的发展历经了PC时代、移动互联⽹时代尤其是在移动互联⽹时代进⾏了⼤量的海量数据、技术积累以及硬件算⼒的巨⼤提升之前不温不⽕的⼈⼯智能伴随着ChatGPT的横空出现。codex是真好用迎来了今天AI的爆⽕各种⼤模型、智能体应⽤等如⾬后春笋版涌现出来AI在更进⼀步进⼊普通⼈的⽣活。现在各个⼚商也在积极拥抱AI作为程序员我们决不能停留在简单使⽤DeepSeek、ChatGPT这种⼤模型级别的产品⽽应该去学习⼤模型应⽤背后的相关技术将模型接⼊到我们程序中来让AI为⾃⼰服务提⾼⽣产效率。本项⽬就带领⼤家从底层学习如何接⼊⼤模型这也是进⾏⼤模型开发的第⼀步。二、名词解释ai这个东西比较新此处将项目中涉及到大模型相关名词解释。【模型 - Model】此处模型专指AI领域的模型。可以简单理解成⼀个从⼤量数据中学习规律、⽤于进⾏预测的数学函数只是该函数参数巨多、⽆⽐复杂。可以简单类⽐成⼀个正在学说话的⼩孩。⼩孩通过⽿朵输⼊海量的语⾳数据⽐如家⼈的⼝头教学、⽇常⽣活对话、读绘画本通过眼睛去认识各种物品⽐如家庭⽇⽤品、交通⼯具、动物、花花草草等⼩孩通过⼤⼈的⽿传⾝教不断学习成⻓慢慢地就能听懂⼤⼈的指令甚⾄模仿⼤⼈⾏为等建⽴起⾃⼰的语⾔规则。⽐如他发现我们经常将吃和饭饭、⽔果连在⼀起睡觉觉和床连在⼀起当给孩⼦说宝宝太晚了我们⼀起上床_____宝宝就会说睡觉觉~~~【⼤模型 - Large Model】⼤模型就是AI⾥的超级学霸参数巨多、知识量爆炸的AI模型像吃了百科全书全⽹数据的“六边形战⼠”。⼀个既能看懂你的照⽚视觉⼜能听懂你的指令语⾳还能⽤⽂字回答你的模型就是⼤模型。⼤体现在◦参数海量GPT-3有1750亿个参数⽽早期模型参数不到⼀百万。◦训练数据恐怖吃掉整个互联⽹⽂本(书籍、论⽂、⽹⻚、代码...)◦训练⼀次GPT-3 ≈ 190万度电(够5000个家庭⽤1年)【⼤语⾔模型 - Large Language Model - LLM】⼤语⾔模型就是AI界的超级话痨是⼀个吃掉整个互联⽹的⽂本能读会写、知识渊博的AI⼤脑专⻔处理⼈类语⾔⽐如聊天、协作、翻译、编程等但可能会胡说⼋道。将整个互联⽹的数据喂给⼤模型后⼤模型会通过神经⽹络分析词语之间的关系例如将猫、喵喵叫、⽑茸茸词归类到⼀起但是它并不理解当⼈类在提问的时候它会推测出最可能得回答。⼤模型的局限性◦可能会出现幻觉蠢包◦没有真正理解◦偏⻅与安全⻛险⽬前主流的⼤语⾔模型⽐如GPT-5、gemini-3.1、claude-4.7、deepseek-v4、Qwen3、doubao-seed-2.0等【提示词 - Prompt】给AI的任务说明书告诉AI要做什么、怎么做的指令。【提⽰词设计三要素】⻆⾊设定Role你是⼀个具有⼗年以上C后端开发的架构师请帮我设计类似微信的聊天软件问题描述任务描述Task⽤200字总结导致拖延症原因格式约束Format请按要点分条列出每条不超过15字【上下⽂ - Content】AI在对话或任务中临时记住的信息像⼈类聊天时不会突然失忆能联系前后⽂理解意思。用户推荐⼀部科幻电影AI《星际穿越》⽤⼾为什么推荐这部AI结合上下⽂因为它的硬核科学设定和感⼈⽗⼥情...模型不会记住所有上下⽂信息超出部分会被丢弃就想内存满了⾃动覆盖。⽐如GPT-4最多能记住128k tokens⼤约10万字【token】token 是模型⽤来表⽰⾃然语⾔⽂本的基本单位可直观理解为“字”或“词”通常 1 个中⽂词语、1 个英⽂单词、1 个数字或 1 个符号计为 1 个 token。不同模型中关于token的计算⽅式可能稍有差异。下⾯是DeepSeek官⽹中关于公布的token的计算⽅式以及收费deepseek API开放平台官网模型 价格 | DeepSeek API Docs相较于其它模型确实便宜一些。十块两千万token。三、deepseek、chatGPT、Gemini使用3.1 产品和模型DeepSeek、ChatGPT、Gemini并不是⼤模型⽽是基于某个⼤模型开发出来的⼤模型应⽤产品。⼤模型具有⼤量参数(数⼗亿甚⾄百亿)的⼈⼯智能模型它学习了海量知识掌握了理解⾃然语⾔、逻辑推理、写作、编程等底层通⽤能⼒是⼀个拥有巨⼤潜⼒的⼤脑。⼤模型产品是基于具体⼤模型开发出来的应⽤或服务这些产品将⼤模型的能⼒封装成⽤⼾友好的界⾯或⼯具提供给最终⽤⼾进⾏使⽤。⽐如DeepSeek官⽹提供的能和⽤⼾聊天的⽹⻚服务实际就是DeepSeek-V4模型装上了⼀个聊天界⾯让⽤⼾低成本使⽤⼤模型提供的服务你问⼤模型问题⼤模型将理解你的问题后将⾃⼰回答输出给你。⽐如DeepSeek是深度求索公司开发的基于DeepSeek-V4模型的产品。3.2 deepseek的使用官网DeepSeek | 深度求索api开放平台DeepSeek 开放平台开和不开深度思考是两种思考方式。① 深度推理模式和快速响应模式开关默认未选中为快速响应模式选中之后切换到深度思考模式。② 未选中时仅使⽤模型预训练知识开启后可获取最新信息注意联⽹搜索模式下不⽀持上传⽂件。③ 未选中时⽆法上传⽂件仅通过⽂本输⼊和模型交互开启后⽀持上传PDF、Word、Excel等⽂件模型会读取⽂件内容并根据内容回答问题⽬前暂不⽀持图⽚。④ 输⼊⽤⼾提⽰词之后发送给模型让模型思考回答⑤ 开新⼀轮对话。⽐如切换⼀个新话题、当对话边的混乱模型开始胡⾔乱语时。⑥ ⽀持会话管理。可以点击任意⼀条之前的会话记录快速回到该次会话中继续之前会话就想看书时返回之前章节⼀样。会话名称⼀般是第⼀次问题的开头命名。tips当我们与ai聊和前文完全没有关系的问题时建议开启一个新的会话。可以看出deepseek也很惊讶。3.3 chatGPT的使用官网ChatGPT。需要魔法。ChatGPT从名字中看Chat是聊天的意思GPT是什么意思GPT是 Generative Pre-trained Transformer 的缩写。Generative(⽣成式) : 它能⽣成内容(⽂字、代码图像等)不是简单检索。Pre-trained(预训练) 在⼤模型⽂本数据上先进⾏通⽤训练再针对具体任务做微调。Transformer : ⼀种深度学习框架是⽬前⼤语⾔模型的核⼼技术擅⻓处理序列数据⽐如⾃然语⾔。GPT就是基于深度学习框架的⼀种⼤语⾔模型系列⽐如GPT-4、GPT-5。ChatGPT就是基于GPT模型的聊天式⼈⼯智能助⼿是⼀个产品。GPT-4可以处理⽂字和图⽚输⼊刚开始主要是⽂字版(GPT-4-turbo)后来逐步开放图像输⼊⽐如识别图⽚中⽂字、分析图表等但输出主要是⽂字。GPT-5是⼀个完整的多模态模型输⼊可以是⽂字、图⽚、⾳频、视频帧等输出可以是⽂字、语⾳、甚⾄可以配合Sora⽣成视频。3.4 Gemini的使用官网‎Google Geminigemini翻译过来是双⼦座双⼦座标志是两个并排站⽴的⼈物象征则会⼆元性、合作以及强⼤的⼒量。Google在开发Gemini时将Google DeepMind和Google Research的Brain团队合并这两个团队的合作被视为双⼦共同致⼒于打造这个野⼼勃勃的多模态AI模型。还有⼀个说法是致敬NASA(美国国家航空航天局)的双⼦座计划该计划是阿波罗登⽉计划之前的关键⼀步旨在测试宇航员⻓时间太空⻜⾏和太空对接等技术这项开创性计划的巨⼤努⼒和对未来成功的奠定与开发⼤语⾔模型的艰难任务产⽣了共鸣因此团队使⽤了Gemini名字。不到为啥pc端的Gemini哈基咪我用不了我就用手机端的代替一下。① 上传⽂件⽀持⽂本、图⽚、视频等不同格式⽂件让⼤模型进⾏理解并进⾏各种操作⽐如总结⽂档关键内容分析表格数据等② Deep Research对问题进⾏更深⼊、全⾯的信息检索和分析⼀般在处理复杂或专业性强的问题时⾮常有⽤③ 图⽚⽣成根据⽤⼾的提⽰词Gemini会使⽤Imagen模型⽣成⼀幅符合描述的图⽚④ 创建⽂档和应⽤启⽤之后Gemini会根据⽤⼾输⼊需求使⽤Canvas⽣成⽂档初稿⽤⼾可以实时调整和优化⑤ 像⼀个私⼈导师能⽤多种⽅式来辅助学习⽐如总结提炼核⼼要点、⽣成学习材料等。⑥ ⽀持语⾳输⼊⑦ 发起新⼀轮对话和临时对话临时对话不会显⽰在会话记录中临时会话系统仅保留72⼩时发起新⼀轮对话会开启⼀个全新的聊天会话⑧ 模型切换⽬前⽀持gemini-3.1-flash-Lite 、gemini-3.5-flash 和 gemini-3.1-pro或升级其他模型。gemini-3.1-flash-Lite擅⻓处理快速、简单的⼈物⽐如基础问答、⽣成简短内容等速度⾮常快gemini-3.5-flash擅长全方位帮助gemini-3.1-pro擅⻓处理复杂、需要深度推理的任务⽐如复杂数学题、编程等。⑨ ⽀持会话管理。不过现在哈基咪落寞了被戏称为美版豆包。3.5 Claude code的使用官网New chat - Claude需要魔法。可以看到gpt支持的功能Claude大部分也能支持。四、为什么学习通过api使用大模型既然各个⼤模型⼚商已经提供了类似DeepSeek、ChatGPT、Gemini这样的⼤模型服务了开箱即⽤⾮常⾹在⽇常学习⼯作中已经收获颇丰为什么还要学习⼿动接⼊⼤模型我认为有以下⼏点原因了解更多⼤模型知识提⾼⾃⼰竞争⼒使⽤官⽅⼤模型服务就像开⻋会操作就⾏⽬的是到达终点调⽤API就像学习汽⻋原理、保养和改装能让你造出更适合任务的专⽤⻋甚⾄将发动机装到⻜机、轮船上。前者是⼤模型产品的使⽤者后者已经摇⾝成为⼤模型应⽤的创造者。构建⾃⼰的应⽤API允许你将⼤模型的⼤脑与你⾃⼰的程序、⽹站、数据库等连接起来实现通⽤机器⼈⽆法完成的任务解锁⽆限可能性。⽐如开发智能编程助⼿提⾼⽇常开发效率、构建⾃动化⼯作流(⾃动处理邮件、⽣成报告、分析数据等)、构建垂直领域应⽤(为法律、医疗、教育等领域开发专业的问答⼯具)职业发展⼤模型应⽤越来越⼴泛许多公司都在将⼤模型能⼒渐渐接⼊到⾃⼰的产品中在AI原⽣应⽤开发领域⼤模型应⽤开发相关岗位也越来越多会使⽤API集成⼤模型的能⼒能让你在求职中更具竞争⼒更好的适应⾏业的发展趋势。学术研究有些考研的学⽣研究的课题可能和⼈⼯智能相关掌握API接⼊⼤模型技术后可以为⾃⼰量⾝定制⼤模型应⽤以进⾏实验和数据分析验证⾃⼰的研究假设。因此作为⼀名计算机专业的学⽣或者将来从事计算机⽅向开发⼯作学习通过API⽅式使⽤⼤模型是⾮常有价值的不仅能帮助你更好地理解和使⽤⼤模型还能给未来职业发展打下坚实基础。五、项目功能概览本项⽬是带领⼤家从零⼿搓各种⼤模型接⼊的SDK在此基础上实现⼀个智能⽹⻚版的AI聊天助⼿。该应⽤⽬前⽀持以下功能获取会话列表新建会话获取⽀持模型发送消息获取指定会话的历史聊天记录删除会话页面概览不代表最终结果六、项目架构项⽬的系统架构图如下系统架构图说明如下应⽤层⽤⼾使⽤ChatSDK库来封装⾃⼰的应⽤层服务⽐如实现智能聊天机器⼈ChatSDK封装⼤模型管理库包括⼤模型管理、Session管理以及数据存储。◦⼤模型管理负责管理并接⼊各种不同⼤模型⽀持接⼊本地⼤模型并向外提供统⼀接⼝⽤⼾可以通过提供的接⼝接⼊⾃⼰需要⼤模型。◦会话管理⽀持会话管理⽤⼾可以获取获取会话列表、历史消息等◦数据存储层⽀持会话记录的持久化存储⽅便查看历史会话。三⽅服务对于接⼊的云端模型最终由ChatSDK将⽤⼾消息转发给三⽅服务器模型回复后将结果返回给应⽤层。对于本地部署⼤模型ChatSDK会将⽤⼾消息发送给本地安装的Ollama服务器由Ollama服务器和三⽅模型服务器对接Ollama将模型的回复返回给ChatSDK由ChatSDK将结果返回给应⽤层。下⾯是本项⽬中使⽤的第三⽅库和⼯具第三⽅库/⼯具描述cpp-httplib轻量级的C HTTP 客⼾端/服务器库spdlog⾼性能、超快速、零配置的 C ⽇志库jsoncpp⾼性能的json库⽤于序列化反序列化sqlite轻量级嵌⼊式关系型数据库⽀持标准SQL语句gflags定义和解析命令⾏参数的C库gtest跨平台的C单元测试框架cur⼀款强⼤的命令⾏⼯具⽀持HTTP、HTTPS、FTP等多种协议apifox⼀款集API调试、Mock数据⽣成、⾃动化测试等功能于⼀体的协作⼯具CMake⼀次配置跨平台⽣成任何构建系统的元构建⼯具ollama⼀个可以让你在本地电脑上轻松下载、运⾏和操作各种⼤型语⾔模型的强⼤⼯具