极客前沿

AI 入门:用 FastAPI 和 Streamlit 搭建你的第一个多用户聊天机器人

2026-07-22 01:30
freeCodeCamp
查看原文

从零开始,学会安装 Ollama、Qwen 模型,并用 FastAPI 和 Streamlit 搭建一个支持多用户的本地 AI 聊天机器人。

本教程将带你从零开始,搭建一个支持多用户的本地 AI 聊天机器人。你不需要任何 AI 或编程基础,只需要跟着步骤走,就能在自己的电脑上跑通一个能聊天、能联网的 AI 应用。

Tutorial Image

准备环境:需要安装什么

在开始之前,你需要安装以下工具:

Tutorial Image
  • Ollama:一个让你在本地运行 AI 模型的工具,免费且无需联网。去 ollama.com 下载安装包,支持 Windows、macOS 和 Linux。
  • Python:编程语言。建议安装 3.10 或更高版本,从 python.org 下载。
  • Qwen 模型:一个轻量级的 AI 聊天模型。安装好 Ollama 后,打开终端(命令提示符)运行 ollama pull qwen3.5:4b。如果你的电脑内存小于 8GB,可以用 qwen3.5:0.8b 代替。

常见坑提醒:安装 Ollama 后,记得先运行 ollama serve 启动服务,否则后面会连不上。

Tutorial Image

安装步骤:一步步搭建项目

接下来,我们创建一个 Python 项目,并安装必要的库。

Tutorial Image
  1. 创建一个文件夹,比如 ai-chatbot,并在终端中进入该文件夹。
  2. 创建虚拟环境(推荐):运行 python -m venv venv,然后激活它(Windows 用 venv\Scripts\activate,Mac/Linux 用 source venv/bin/activate)。
  3. 安装依赖库:运行 pip install fastapi streamlit langchain pydantic。这些库的作用:FastAPI 是构建 API 的框架,Streamlit 是搭建网页界面的工具,LangChain 是连接 AI 模型的桥梁,Pydantic 是验证数据格式的库。
  4. 创建两个文件:backend.py(后端)和 frontend.py(前端)。你可以用记事本或代码编辑器(如 VS Code)编写。

backend.py 中,写入以下代码(简化版):

Tutorial Image
from fastapi import FastAPI
from pydantic import BaseModel
from langchain_ollama import ChatOllama

app = FastAPI()
llm = ChatOllama(model='qwen3.5:4b')

class Message(BaseModel):
    content: str

@app.post('/chat')
def chat(message: Message):
    response = llm.invoke(message.content)
    return {'response': response.content}

frontend.py 中,写入:

import streamlit as st
import requests

st.title('AI 聊天机器人')
user_input = st.text_input('输入你的消息')
if user_input:
    res = requests.post('http://localhost:8000/chat', json={'content': user_input})
    st.write(res.json()['response'])

验证是否成功:运行你的第一个 AI 应用

  1. 打开两个终端窗口。第一个窗口运行后端:python backend.py。你会看到类似 Uvicorn running on http://127.0.0.1:8000 的信息。
  2. 第二个窗口运行前端:streamlit run frontend.py。浏览器会自动打开一个网页。
  3. 在网页的输入框中输入“你好”,点击回车,稍等几秒,AI 就会回复你!

常见坑提醒:如果前端报错“连接被拒绝”,检查后端是否在运行,或者防火墙是否阻止了 8000 端口。

下一步可以做什么

现在你已经成功运行了第一个 AI 应用!接下来可以尝试:

  • 给 AI 添加更多功能,比如查询天气、计算单词数(参考原文中的工具设计)。
  • 支持多用户:为每个用户创建独立的会话,避免聊天记录混淆。
  • 部署到服务器,让朋友也能访问。

记住,所有计算都在你的电脑上完成,不需要付费调用云 API。祝你玩得开心!

内容来源

freeCodeCamp

发布时间

2026-07-22 01:30

返回 AI技术