# LLM **Repository Path**: yejinlei/llm ## Basic Information - **Project Name**: LLM - **Description**: LLM大模型 - **Primary Language**: Unknown - **License**: GPL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 1 - **Created**: 2025-05-03 - **Last Updated**: 2025-08-13 ## Categories & Tags **Categories**: llm **Tags**: None ## README # LLM大模型 ## 一、Agent范式 | ![](./agent/doc/aiagent.png) | ![](./agent/doc/agentai.png)
李飞飞团队发表的论文《*AGENT AI*:SURVEYING THE HORIZONS OF MULTIMODAL INTERACTION》 | | ---------------------------- | ------------------------------------------------------------ | ### 1.1、提示技术 ### 1.2、Agent编程 > 围绕 OpenAI API 展开,包含多种功能的 Python 脚本,如调用 OpenAI 的聊天、嵌入向量、图像生成和视觉分析等功能,同时也集成了 LangChain 框架。 | 脚本分类 | 脚本 | 描述 | 使用 | 参考 | | --- | --- | --- | --- | --- | | **Chat 类** | `openai_chat_async_client.py` | 利用异步编程的方式调用 OpenAI 的聊天 API,相比同步调用,它能在等待 API 响应时处理其他任务,提高程序的整体效率,最终将 API 返回的响应内容输出。 | python .\openai_chat_async_client.py

**user:**你好,请介绍一下你自己
**assistant:**您好!我是由中国的深度求索(DeepSeek)公司开发的智能助手DeepSeek-R1。如您有任何任何问题,我会尽我所能为您提供帮助。 | | | | `openai_streaming_client.py` | 以同步方式调用 OpenAI 的聊天 API,并且使用流式输出功能。流式输出意味着在 API 处理请求的过程中,会逐步返回部分结果,而不是等待整个响应生成后一次性返回,适合需要实时显示结果的场景。 | python .\openai_streaming_client.py
**user:** 你觉得中美关税战会导致什么后果?
**assistant:**嗯,我现在在想中美之间打关税战会有怎样的后果呢。首先,我知道关税是保护本国产业的一种措施,但是经常打贸易战会影响很多经济活动。让我从几个方面来
分析一下可能的后果。

首先,经济影响方面。如果中国加征关税,美国可能会 retaliatory 加征关税,这样会导致产品双向关税,价格上升。这对消费者来说就是贵了,而且可能导致
进口企业缩减... ... | | | | `openai_chat_client.py` | 同步调用 OpenAI 的聊天 API,程序会等待 API 处理完请求并返回完整响应后,再继续执行后续代码,最后将响应内容输出。 | python .\openai_chat_client.py
**user:**你好,请介绍一下你自己
**assistant:**您好!我是由中国的深度求索(DeepSeek)公司开发的智能助手DeepSeek-R1。如您有任何任何问题,我会尽我所能为您提供帮助。 | | | | `openai_function_calling.py` | 通过同步方式调用 OpenAI 的聊天 API 并使用函数调用功能。该脚本会调用function calling函数获取北京的天气信息,将天气数据整合到聊天响应中。 | python .\openai_function_calling.py
API 响应:
UserWarning: Pydantic serializer warnings:
PydanticSerializationUnexpectedValue(Expected `str` - serialized value may not be as expected [input_value={'city': '北京'}, input_type=dict])
return self.__pydantic_serializer__.to_json(
{
"content": "\n\n",
"refusal": null,
"role": "assistant",
"annotations": null,
"audio": null,
"function_call": null,
"tool_calls": [
{
"id": "019696a89a663d6b4ba7f0cb55463a15",
"function": {
"arguments": {
"city": "北京"
},
"name": "get_mock_weather"
},
"type": "function",
"index": 0
}
],
"reasoning_content": "今天用户问北京现在的天气怎么样,温度多少度。我需要帮他查询。用户提供了get_mock_weather这个工具,指定需要传入city参数,
城市名称是北京。所以我应该调用这个工具,传入参数city=\"北京\"。\n\n首先,确定工具的名称是get_mock_weather,参数部分只用city参数,值是北京。这
样就可以获取到关于北京的天气信息了。所以,最终的JSON格式应该是{\"name\":\"get_mock_weather\",\"parameters\":{\"city\":\"北京\"}}。\n"
}
**[INFO] get_mock_weather 函数被调用,正在查询 北京 的天气
[INFO] 成功查询到 北京 的天气: 晴 50℃
函数调用结果: 晴 50℃**

***50℃*** 是我故意设计的,大模型没有异议 | | | **Vision 类** | `openai_vision_describe.py` | 同步调用 OpenAI 的视觉 API,对本地存储的图片进行分析,提取图片中的各种特征和信息,并将这些信息整理成文字描述输出。 |

这张照片展示了一只穿着商务服装的猫。它戴着一副黑框眼镜,穿着灰色的西装和一条 striped 领带,坐在一张办公桌前。猫的双爪放在键盘上,正在使用电脑,左右两侧分别是台灯和书本。图中环境整洁,清楚地反映了典型的办公室氛围。 | | | | `openai_text2img.py` | 采用异步方式调用 OpenAI 的图像生成 API,根据用户提供的文本提示词生成相应的图片,并输出生成图片的 URL,用户可以通过该 URL 访问或下载生成的图片。 |

提示词:一只穿着西装戴着眼镜的猫在办公桌前用电脑 | | | **Audio 类** | `openai_whisper.py` | 调用 OpenAI 的 Whisper 语音识别 API,将输入的音频文件转换为文本内容。示例中对名为“咏鹅”的音频文件进行识别,输出了对应的文本内容。 | python .\openai_whisper.py
Transcription(text='**咏鹅,唐,骆宾王,鹅鹅鹅,曲项向天歌。白毛浮绿水,红掌拨清波。**', logprobs=None, language='auto') | | | **LangChain 类** | `langchain_chat_client.py` | 借助 LangChain 框架,以同步方式调用 OpenAI 的聊天 API。LangChain 提供了一系列工具和组件,方便开发者构建复杂的语言处理应用,最后将 API 的响应内容输出。 | 同`openai_chat_async_client.py` | | | | `langchain/langchain_function_calling.py` | 运用 LangChain 框架,同步调用 OpenAI 的函数调用功能。通过调用相应的函数获取北京的天气信息,并将其整合到聊天响应中。 | python .\langchain\langchain_function_calling.py
最终请求的 OpenAI API URL: https://api.deepseek.com
准备调用模型...
模型调用完成...
API 响应:
{'tool_calls': [{'id': 'call_0_32203f9b-09c2-418c-bb41-eee43ce51a11', 'function': {'arguments': '{"city":"北京"}', 'name': 'get_mock_weather'}, 'type': 'function', 'index': 0}], 'refusal': None}
**[INFO] get_mock_weather 函数被调用,正在查询 北京 的天气
[INFO] 成功查询到 北京 的天气: 晴 250℃
函数调用结果: 晴 250℃。**
***250℃*** 是我故意设计的,大模型没有异议 | | | | `langchain/langchain_more_function_calling.py` | 同上,但定义了两个function calling函数 | python .\langchain\langchain_more_function_calling.py
准备调用模型...
模型调用完成...
API 响应:
{'tool_calls': [{'id': 'call_0_84ffa00b-da70-45b0-baaa-6950284f405b', 'function': {'arguments': '{"city": "北京"}', 'name': '**get_mock_weather**'}, 'type': 'function', 'index': 0}, {'id': 'call_1_dac3dce8-5a99-49e5-bf19-c2abd4620854', 'function': {'arguments': '{}', 'name': '**get_mock_tech_news**'}, 'type': 'function', 'index': 1}], 'refusal': None}
[INFO] get_mock_weather 函数被调用,正在查询 北京 的天气
[INFO] 成功查询到 北京 的天气: 晴 50℃
函数调用结果: 晴 50℃
[INFO] get_mock_tech_news 函数被调用,正在查询科技新闻
[INFO] 成功查询到科技新闻: 最新科技新闻:AI 在图像识别领域取得重大突破,准确率大幅提升。
函数调用结果: 最新科技新闻:AI 在图像识别领域取得重大突破,准确率大幅提升。 | | | | `langchain/langchain_react.py` | 运用 LangChain 框架ReAct推理,同步调用 OpenAI 的函数调用功能。通过调用相应的函数获取北京的天气信息,并将其整合到聊天响应中。 | python .\langchain\langchain_react.py
准备调用模型...
> **Entering new AgentExecutor chain..**.
**Thought:** 我需要获取北京当前的天气信息,可以使用get_mock_weather工具来查询。
**Action:** get_mock_weather
Action Input: "北京"[INFO] get_mock_weather 函数被调用,正在查询 北京 的天气
[INFO] 成功查询到 北京 的天气: 晴 250℃

**Observation:** 晴 250℃
**Thought:**I now know the final answer
**Final Answer:** 北京现在的天气是晴天,气温为250℃。

> **Finished chain.**
模型调用完成...
代理响应: 北京现在的天气是晴天,气温为250℃。 | ![](./agent/react.png)
**ReAct 一词来自于论文《ReAct: Synergizing Reasoning and Acting in Language Models》,包含 Reason 与 Act 两个部分,其中 Reason 就是大模型推理的过程,其推理运用了 CoT 的思想;Act 是与外界环境交互的动作。ReAct 发明的初衷是为了解决两个问题,第一,大模型执行的结果不可观测,导致出现“幻觉”;第二,大模型不能与外部环境交互,导致无法回答一些特定垂直领域或者实时问题。
**[大白话react.mp4](./agent/react.mp4) | | | `langchain/langchain_more_react.py` | 同上,但定义了两个function calling函数 | python .\langchain\langchain_more_react.py
> **Entering new AgentExecutor chain...**
**Thought:** 我需要分别获取北京的实时天气信息和最新的科技新闻。首先,我将获取北京的天气信息。
**Action:** get_mock_weather
Action Input: "北京"[INFO] get_mock_weather 函数被调用,正在查询 北京 的天气
[INFO] 成功查询到 北京 的天气: 晴 50℃

**Observation:** 晴 50℃
**Thought:Thought:** 现在我已经获取了北京的天气信息,接下来我需要获取最新的科技新闻。
**Action:** get_mock_tech_news
Action Input: None[INFO] get_mock_tech_news 函数被调用,正在查询科技新闻
[INFO] 成功查询到科技新闻: 最新科技新闻:AI 在图像识别领域取得重大突破,准确率大幅提升。

**Observation:** 最新科技新闻:AI 在图像识别领域取得重大突破,准确率大幅提升。
**Thought:Thought:** 现在我已经获取了北京的天气信息和最新的科技新闻,可以回答用户的问题了。
**Final Answer:** 北京现在的天气是晴,气温50℃。最新的科技新闻是:AI 在图像识别领域取得重大突破,准确率大幅提升。

> **Finished chain.**
**北京现在的天气是晴,气温50℃。最新的科技新闻是:AI 在图像识别领域取得重大突破,准确率大幅提升。** | | | | `langchain/langchain_reflexion.py` | | | ![](./agent/reflection.png)
**1. Generate 大模型收到用户的请求后,生成初始 response,并交给 Reflect 大模型。
2. Reflect 会给出评估后,将评语等反馈返给 Generate 大模型。
3. Generate 大模型根据评估做调整后,重新生成 response。
反复循环,直到达到用户设定的循环次数后,将最终的 response 返给用户。
**[大白话reflextion.mp4](./agent/reflextion.mp4) | | **NoOpenAI 类** | `noopenai_streaming_client_requests.py` | 使用 `requests` 库通过直接 HTTP POST 方式向 OpenAI 的聊天 API 发送流式请求。这种方式不依赖 OpenAI 提供的 SDK,直接与 API 进行交互,最后输出响应内容。 | | | | | `noopenai_http_request.py` | 使用 `requests` 库通过直接 HTTP POST 方式向 OpenAI 的聊天 API 发送请求,不借助 OpenAI 的 SDK,程序会等待 API 返回完整响应后,将内容输出。 | | | | | `noopenai_function_calling.py` | 通过 `requests` 库直接 HTTP POST 方式调用 OpenAI 的聊天 API 并使用函数调用功能,不依赖 OpenAI SDK。 | python .\noopenai_function_calling.py | | | | `noopenai_text2img.py` | 使用 `requests` 库直接 HTTP POST 方式调用 OpenAI 的图像生成 API,根据用户提供的文本提示词生成相应的图片,不依赖 OpenAI SDK。 | ![](./agent/dog.png)
提示词:一只穿着西装戴着眼镜的猫在办公桌前用电脑 | | | **其他** | `openai_embedding.py` | 计算两段文本的余弦相似度,使用的是网易有道的嵌入向量模型。 | python .\openai_embedding.py
文本 '我喜欢编程' 和文本 '编程使我快乐' 的余弦相似度为: 0.6989 | | > 总结: > > 1. CoT(Chain of Thoughts)和 ReAct(Reason+Act)是推理模式,用于减少大模型产生幻觉。 > 2. Reflexion是一种进阶的推理方案,通过反思和自我反思,不断精益求精,积累经验,以提高大模型的回答准确性和效率。 > 3. ReWOO(Reason WithOut Observation)是在 ReAct 方案基础上的思考,通过 Planner 和 Solver 大模型的协同工作,节省了对话成本。 > 4. 思维链、ReAct、Reflexion 和 ReWOO 是四种常见的 Agent 推理方案,解决了大模型在实际应用中的痛点,不断思考完善的过程。 > 5. 思维链、ReAct、Reflexion 和 ReWOO 四种方案证明了人类不断针对大模型和实际应用中的痛点,不断思考完善的过程。 > 6. Reflexion 利用三个大模型协同分工,一个用来做 ReAct,一个用来检查结果,一个用来总结经验教训,保证了结果的准确性,提高了执行效率。 > 7. ReWOO 解决了 prompt 越来越长的问题,通过 Planner 和 Solver 大模型的协同工作,节省了对话成本。 > 8. 方案没有最好的,只有最合适的,可以在工作中遇到实际场景时,灵活应用。 > 9. 大模型通过训练已经具备思维链的思想,可能也能通过训练具备 ReAct 等更高级的思想。 #### Reflexion 口语式反思强化学习 ##### 1)ALFWorld 跨文本与实体环境的交互式学习平台 [大白话ALFWorld.mp4](alfworld.mp4) ### 1.3 MCP - AI世界的“智能接线员 > MCP(Model Context Protocol,模型上下文协议)是由Anthropic公司主导推出的开放标准协议,旨在为大型语言模型(LLM)提供统一接口,实现与外部数据源、工具及系统的标准化连接。[大白话mcp.mp4](./agent/doc/mcp.mp4) #### 1)Trac + blender-mcp+ Blender - 安装工具 - ```powershell powershell-Command "irm https://astral.sh/uv/install.ps1 | iex" ``` - 配置Blender - ```shell git clone https://github.com/ahujasid/blender-mcp #1. Blender中导入addon.py(mcp-server) #2. Blender连接mcp-server ``` - | ![](./agent/doc/blendermcp1.png) | ![](./agent/doc/blendermcp2.png) | | -------------------------------- | -------------------------------- | - 配置Trac - ```json //mcp.json { "mcpServers": { "blender": { "command": "cmd", "args": [ "/c", "uvx", "blender-mcp" ] } } } ``` - 生成 - - ![](./agent/doc/blenderhouse.png) - ![](./agent/doc/blendercar.png) - blendermcp整体架构,如下: - ![](./agent/doc/blendermcp3.png) ### 二、LLMOps 低平台 #### Dify DSL | DSL | 类型 | 呈现 | | --------------- | ------ | ------------------------------------------------- | | LiblibAI x 星流 | 文生图 | ![](./llmops/dify/dsl/2img/LiblibAI/liblibai.png) | ### 三、论文 1. 李飞飞团队《AGENT AI:SURVEYING THE HORIZONS OF MULTIMODAL INTERACTION》[EN](./doc/AGENT AI- SURVEYING THE HORIZONS OF MULTIMODAL INTERACTION.docx) / [CN](./doc/AGENT AI- SURVEYING THE HORIZONS OF MULTIMODAL INTERACTION CN.pdf)、视频:[1. 智能体人工智能导论与集成基础](./agent/doc/1智能体人工智能导论与集成基础.mp4)、[2. 智能体人工智能的范式与学习方法](./agent/doc/2智能体人工智能的范式与学习方法.mp4)