Skip to main content

fp-webui — FP Web 界面

PyPI Python License

简介

fp-webui 是FPAgent 框架的 Web 图形界面。基于 FastAPI + Uvicorn 构建,提供浏览器端的 Agent 交互体验,支持实时流式对话、会话管理、配置调整等。

通过 pip install fp-agent[webui] 或 pip install fp-webui 安装。


特性

  • 浏览器端对话 — 现代化的 Web 聊天界面,无需安装终端
  • 流式响应 — Server-Sent Events (SSE) 实时推送 LLM 输出
  • 多会话管理 — 创建/切换/删除会话,历史记录永久保存
  • Markdown 渲染 — 代码语法高亮、表格、数学公式完美展示
  • 深色/浅色主题 — 一键切换,护眼模式
  • 配置面板 — 浏览器内调整 LLM 参数、切换模型
  • 文件上传 — 支持拖拽上传文件作为上下文

安装

pip install fp-webui

要求 Python >= 3.11。


快速启动

命令行启动

fp-webui

或使用主包:

pip install fp-agent[webui]
fp --webui

指定主机和端口

fp-webui --host 0.0.0.0 --port 8080

启动输出

╭─ FP WebUI ─────────────────────╮
│                                           │
│  地址: http://localhost:7860              │
│  共享: http://192.168.1.100:7860          │
│                                           │
│  按 Ctrl+C 停止服务                       │
╰───────────────────────────────────────────╯

访问界面

打开浏览器访问 http://localhost:7860:

┌─────────────────────────────────────────┐
│  🤖 FP                    [⚙] [🌙] │
├─────────────────────────────────────────┤
│                                         │
│  ┌─────────────────────────────────┐   │
│  │ 你好!我是 FP,有什么可以    │   │
│  │ 帮你的?                        │   │
│  └─────────────────────────────────┘   │
│                                         │
│  ┌─────────────────────────────────┐   │
│  │ 请用 Python 写一个 Web 服务器   │   │
│  │ [发送]                         │   │
│  └─────────────────────────────────┘   │
│                                         │
│  [会话: default] [新建] [历史]          │
└─────────────────────────────────────────┘

API 接口(非 Web 页面场景)

fp-webui 同时暴露了 RESTful API,方便集成到其他前端或自动化工具中:

端点 方法 说明
/api/chat POST 发送消息并获取流式响应 (SSE)
/api/sessions GET 获取会话列表
/api/sessions POST 创建新会话
/api/sessions/{id} DELETE 删除会话
/api/config GET 获取当前配置
/api/config PUT 更新配置
/api/models GET 获取可用模型列表
/health GET 健康检查

调用示例

curl -N http://localhost:7860/api/chat \
  -H "Content-Type: application/json" \
  -d '{"message": "你好", "session_id": "default", "stream": true}'

配置

通过命令行参数或环境变量配置:

# 命令行参数
fp-webui --host 127.0.0.1 --port 7860 --reload

# 环境变量
export FP_WEBUI_HOST=0.0.0.0
export FP_WEBUI_PORT=7860
export FP_WEBUI_THEME=dark
fp-webui

配置文件(YAML):

webui:
  host: "0.0.0.0"
  port: 7860
  theme: "dark"              # dark / light
  session_storage: "file"    # file / memory
  max_upload_size_mb: 10
  cors_origins: ["*"]

依赖

依赖 版本 用途
fp-core >= 0.1.0 Agent 核心引擎
fastapi >= 0.122.0 Web 框架
uvicorn >= 0.38.0 ASGI 服务器

许可

MIT © zpb

Metadata

Release files for fp-webui 0.1.14

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fp-webui 0.1.14
File Size Uploaded
fp_webui-0.1.14.tar.gz 62.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for fp-webui 0.1.14
File Interpreter ABI Platform
fp_webui-0.1.14-py3-none-any.whl Python 3 none any Details

Total release size: 125.2 kB

Release files / fp_webui-0.1.14.tar.gz

Download URL fp_webui-0.1.14.tar.gz
Size 62.6 kB
Tags Source
SHA-256 checksum
How to use checksums
b86b2bc2aa1e28154273ee2ad70b9f8a83dee858282b32ebcd4b95fa1b8e3c3c
BLAKE2b-256 checksum
How to use checksums
8a46a03ea1de6bdf24d6b431f5cf026faab1ed7e301aa0363a1e0ea8f18e67e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.

Transparency log

Release files / fp_webui-0.1.14-py3-none-any.whl

Download URL fp_webui-0.1.14-py3-none-any.whl
Size 62.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
236716fb79c89db94613dd72c9ca4d8d7f98a7d870a772af219378919aa12cf4
BLAKE2b-256 checksum
How to use checksums
0eedc36db593e991f4462bb1edd651c82389ff826e32864526cda48dd1a359fb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.

Transparency log

Release history Release notifications | RSS feed

0.2.1

2 release files

0.2.0

2 release files

This release

0.1.14 This release

2 release files

0.1.11

2 release files

0.1.10

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page