零基础入门 AI 开发:Python 调用大模型 + 本地知识库实现(RSG实战)(附完整代码)
嘿,各位开发者!👋
现在是2026年,AI已经不是一个“遥不可及的概念”,而是你工具箱里的一把瑞士军刀。你不需要成为算法研究员,也不需要看懂复杂的Transformer论文,只要会写Python,就能把强大的大模型能力(如GPT-4o、Llama 3、文心一言)集成到你的项目里,让你的应用瞬间“智商上线”。
这篇博客专为Python开发者设计,不讲天书,只讲落地实战。我们会从0开始,教你如何安全地调用API、构建一个属于自己的AI问答机器人,以及如何在2026年的技术栈下避坑。
读完这篇文章,你将能做出这样的效果:
-
用几行代码,让你的Python程序听懂人类语言。
-
构建一个本地知识库(RAG),让AI只回答你指定领域的问题(比如你的美食管理系统说明书)。
-
学会API Key安全管理,再也不用担心把密钥写进代码库里被开源。
一、 核心准备:工欲善其事,必先利其器
在写代码前,我们需要搞定两个东西:开发环境与AI接口。
1.1 环境搭建(新手必看)
确保你的Python环境是3.10及以上版本。安装我们最核心的两个库:
-
requests: 用于发送HTTP请求,调用API。
-
python-dotenv: 用于安全管理密钥,这是2026年的开发规范。
1.2 获取AI API Key(以OpenAI兼容接口为例)
现在市面上有很多兼容OpenAI格式的国产大模型平台(如字节、百度、智谱等),注册账号后通常能获得免费额度,比直接用OpenAI更适合新手练手。
-
前往你选择的AI平台官网,注册并登录。
-
在“个人中心” -> “API密钥管理”中,创建一个新的 API Key。
-
关键一步:复制这个Key,千万不要直接写在代码里!
1.3 安全规范:密钥怎么存?
为了安全,我们将密钥存放在环境变量中。在项目根目录创建一个 .env 文件:

这样一来,即使你把代码开源到GitHub,.env 文件不提交,密钥也绝对安全。
二、 入门:第一行AI代码,通义千问
我们先用最基础的方式,调用一下大模型,看看它能不能听懂我们说话。我们将构建一个简单的文本生成器。
2.1 代码实现
创建文件 ai_simple_call.py:
import requests
from dotenv import load_dotenv
import os
# 1. 加载环境变量,从.env文件读取密钥
load_dotenv()
api_key = os.getenv("API_KEY")
base_url = os.getenv("BASE_URL")
# 2. 定义请求头
headers = {
"Content-Type": "application/json",
"Authorization": f"Bearer {api_key}"
}
# 3. 定义请求体:核心是Prompt(提示词)
data = {
"model": "gpt-3.5-turbo", # 或者你对应的模型名称,如 "ernie-4.0"
"messages": [
{"role": "user", "content": "用Python写一个优雅的单例模式,并解释为什么要用它。"}
],
"temperature": 0.7 # 创意度,0-2之间,越低越严谨
}
# 4. 发送POST请求
try:
response = requests.post(f"{base_url}/chat/completions", headers=headers, json=data)
response.raise_for_status() # 如果状态码不是200,抛出异常
# 5. 解析并打印结果
result = response.json()
print("AI的回答是:")
print(result["choices"][0]["message"]["content"])
except Exception as e:
print(f"调用失败啦: {e}")
2.2 运行效果
在终端运行 python ai_simple_call.py,你会看到AI迅速给出一段关于Python单例模式的专业解释。
这就是AI开发的最小可行性单元(MVP)。接下来,我们要进阶。
三、 进阶:打造你的专属AI助手(RAG实战)
直接调用大模型很好,但它容易“一本正经地胡说八道”(幻觉)。比如你问它“我的美食管理系统怎么用”,它可能会瞎编。
2026年最主流的解决方案是 RAG (Retrieval-Augmented Generation) —— 检索增强生成。
简单说就是:给AI装个“大脑”,让它回答问题前,先去你的文档里找答案。
我们将实现一个基于文档的问答系统,专门用来回答你“重庆美食管理系统”的使用说明。
3.1 引入向量数据库
为了实现RAG,我们需要一个能把文字变成向量、并快速搜索的工具。选用 Chroma,它是最轻量、对新手最友好的向量数据库。
安装依赖:pip install chromadb langchain langchain-openai

3.2 完整代码实现
创建文件 ai_rag_chat.py:
from dotenv import load_dotenv
from langchain_openai import ChatOpenAI, OpenAIEmbeddings
from langchain_community.document_loaders import TextLoader # 加载txt文档
from langchain_text_splitters import RecursiveCharacterTextSplitter # 分割文本
from langchain_community.vectorstores import Chroma # 向量数据库
from langchain.chains import create_retrieval_chain
from langchain.chains.combine_documents import create_stuff_documents_chain
from langchain_core.prompts import ChatPromptTemplate
# 1. 加载环境变量
load_dotenv()
# 2. 初始化大模型
llm = ChatOpenAI(model="gpt-3.5-turbo", temperature=0.1) # temperature设低一点,保证回答严谨
# 3. 加载你的专属文档(假设你有一份food_qa.txt 是美食系统的说明)
# 你可以把你的Python代码注释、功能说明写进这个txt
loader = TextLoader("food_qa.txt", encoding="utf-8")
docs = loader.load()
# 4. 文本分割(大模型有上下文长度限制,必须切分)
text_splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=50)
splits = text_splitter.split_documents(docs)
# 5. 存入向量数据库
# 这里会自动调用Embeddings接口将文字转为向量
vectorstore = Chroma.from_documents(documents=splits, embedding=OpenAIEmbeddings())
retriever = vectorstore.as_retriever()
# 6. 定义Prompt模板(告诉AI怎么用检索到的资料)
system_prompt = (
"你是一个专业的美食管理系统助手。请仅基于下方的上下文文档回答用户的问题。"
"如果你不知道答案,请回答‘我不清楚这个问题,请查阅系统说明书’。"
"\n\n"
"{context}"
)
prompt = ChatPromptTemplate.from_messages([
("system", system_prompt),
("user", "{input}"),
])
# 7. 构建RAG链
question_answer_chain = create_stuff_documents_chain(llm, prompt)
rag_chain = create_retrieval_chain(retriever, question_answer_chain)
# 8. 对话循环
print("🎮 美食管理AI助手已启动(输入 'exit' 退出):")
while True:
user_input = input("\n你问: ")
if user_input.lower() == "exit":
break
response = rag_chain.invoke({"input": user_input})
print("🤖 AI答: ", response["answer"])
3.3 如何使用?
-
在同目录下新建一个
food_qa.txt文件,把你的“美食管理系统”的功能、API设计、使用方法写进去。 -
运行代码
python ai_rag_chat.py。 -
提问:“如何新增一条重庆美食数据?”
AI会去 food_qa.txt 里找对应的代码逻辑,然后准确地告诉你怎么写,绝对不会编瞎话!
四、 2026开发者必须避开的3个大坑
作为一名资深踩坑选手,最后送你三个避坑指南,这是新手最容易死在的地方:
1. 密钥泄露惨案
-
坑:直接把
sk-xxxxxx写进main.py里,然后顺手git add .提交了。 -
解:死磕
.env文件,永远不要在代码里硬编码密钥。
2. 幻觉(Hallucination)
-
坑:没加RAG直接问AI复杂业务逻辑,AI回答得头头是道,结果你一运行代码报错。
-
解:2026年做业务,RAG是标配。 给AI喂数据,比逼它“死记硬背”更靠谱。
3. 忽略本地部署
-
坑:网络不好,调用一次API要等10秒。
-
解:如果条件允许,尝试部署 Llama 3.1 (7B/8B) 或 Qwen2 等开源大模型到本地服务器,速度快且隐私性好。
五、 总结与下一步
恭喜你!你已经掌握了2026年AI应用开发的核心范式。
今天我们做了三件事:
-
安全调用了AI接口,掌握了规范。
-
实战RAG技术,让AI能回答你的专属问题。
-
避坑了密钥泄露和AI幻觉两大雷区。
接下来的路怎么走?
-
深化项目:把这个RAG系统集成到你之前的“重庆美食管理系统”中,做一个带AI问答的Web界面(可以用Streamlit快速搭建)。
-
探索Agent:尝试让AI自动调用工具(比如让AI帮你写代码、自动读Excel文件),这是AI的下一个进化方向。
你的代码就是你最强大的武器。2026年,会用AI写代码的人,效率是别人的10倍。
你准备好了吗?
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)