1. 简介LLM 大模型应用开发框架, 用来构建 agent.LangChain 提供统一接口可连接大模型、Prompt、向量数据库、工具调用、记忆系统以及 Agent 工作流.它是 python 语言, 虽然也有 js 版本叫 LangChain.js, 但生态和更新速度都不如 Python.2. 核心组件LLM连接 OpenAI、Claude、Gemini 等大模型PromptTemplate管理 Prompt 模板Chains构建多步骤 AI 工作流Memory实现多轮对话记忆Tools调用搜索、数据库、API 等工具Agents让 AI 自动决策与执行任务Vector Store连接向量数据库实现 RAG3. 极简 demo最简单的 LangChain 阿里云大模型 Demoimportsys sys.stdout.reconfigure(encodingutf-8)fromdotenvimportload_dotenvfromlangchain_openaiimportChatOpenAIfromlangchain_core.promptsimportChatPromptTemplatefromlangchain_core.output_parsersimportStrOutputParserfromlangchain_core.prompt_valuesimportChatPromptValuefromlangchain_core.messagesimportAIMessage load_dotenv()llmChatOpenAI(modelqwen-plus)defdemo_lcel():写法一LCEL 管道风格推荐chain(ChatPromptTemplate.from_messages([(human,{question})])|llm|StrOutputParser())resultchain.invoke({question:你好请用一句话介绍你自己})print(result)defdemo_step_by_step()-None:写法二普通逐步调用prompt:ChatPromptTemplateChatPromptTemplate.from_messages([(human,{question})])parser:StrOutputParserStrOutputParser()# 第一步模板填充变量生成提示词prompt_value:ChatPromptValueprompt.invoke({question:你好请用一句话介绍你自己})# 第二步调用 LLM返回 AIMessage 对象ai_message:AIMessagellm.invoke(prompt_value)# 第三步解析器提取纯文本result:strparser.invoke(ai_message)print(result)# demo_lcel()demo_step_by_step()4. llm.invoke() 调用链4.1 http 请求背后是 httpx 框架的 http post 请求.ChatOpenAI.invoke() ← langchain-core 入口 └→ _generate() ← langchain_openai/chat_models/base.py:1695 └→ self.client.with_raw_response.create(**payload) ← 进入 openai SDK └→ SyncAPIClient.request() ← openai/_base_client.py:995 └→ _send_request() ← openai/_base_client.py:957 └→ self._client.send(request) ← httpx.Client.send() 真正的 HTTP 请求4.2 LLM 传参调用 LLM 的相关参数见下.# 位于 site-packages/openai/resources/chat/completions/completions.pyclassCompletions(SyncAPIResource):required_args([messages,model],[messages,model,stream])defcreate(...):returnself._post(/chat/completions,bodymaybe_transform({messages:messages,model:model,audio:audio,frequency_penalty:frequency_penalty,function_call:function_call,functions:functions,logit_bias:logit_bias,logprobs:logprobs,max_completion_tokens:max_completion_tokens,max_tokens:max_tokens,metadata:metadata,modalities:modalities,moderation:moderation,n:n,parallel_tool_calls:parallel_tool_calls,prediction:prediction,presence_penalty:presence_penalty,prompt_cache_key:prompt_cache_key,prompt_cache_options:prompt_cache_options,prompt_cache_retention:prompt_cache_retention,reasoning_effort:reasoning_effort,response_format:response_format,safety_identifier:safety_identifier,seed:seed,service_tier:service_tier,stop:stop,store:store,stream:stream,stream_options:stream_options,temperature:temperature,tool_choice:tool_choice,tools:tools,top_logprobs:top_logprobs,top_p:top_p,user:user,verbosity:verbosity,web_search_options:web_search_options,},completion_create_params.CompletionCreateParamsStreamingifstreamelsecompletion_create_params.CompletionCreateParamsNonStreaming,),optionsmake_request_options(extra_headersextra_headers,extra_queryextra_query,extra_bodyextra_body,timeouttimeout,security{bearer_auth:True},),cast_toChatCompletion,streamstreamorFalse,stream_clsStream[ChatCompletionChunk],)附录LangChain 官网