ChatBI项目安装与使用教程
1. 项目目录结构及介绍
ChatBI项目的目录结构如下所示:
chatbi/
├── demos/ # 演示相关文件
├── docker/ # Docker相关配置和脚本
├── packages/ # 项目的主要代码部分,分为客户端和服务端
├── .env.example # 环境变量配置示例文件
├── .eslintrc # ESLint配置文件
├── .eslintrc.js # ESLint配置文件(JavaScript)
├── .gitignore # Git忽略文件
├── .lintstagedrc # Lint-staged配置文件
├── .npmrc # npm配置文件
├── .pre-commit-config.yaml # pre-commit配置文件
├── .prettierignore # Prettier忽略文件
├── .prettierrc # Prettier配置文件
├── .python-version # Python版本文件
├── Justfile # Just任务配置文件
├── LICENSE # 项目许可证文件
├── Makefile # Makefile文件
├── README.en.md # 项目英文README文件
├── README.md # 项目中文README文件
├── jest.config.ts # Jest测试配置文件
├── package.json # npm项目配置文件
├── pnpm-lock.yaml # pnpm锁文件
├── pnpm-workspace.yaml # pnpm工作空间配置文件
├── pyproject.toml # Python项目配置文件
├── tsconfig.build.json # TypeScript构建配置文件
├── tsconfig.json # TypeScript配置文件
└── uv.lock # uv工具锁文件
demos/:包含演示相关的文件。docker/:包含Docker配置和启动脚本,用于容器化部署。packages/:包含项目的主要代码,分为客户端和服务端。.env.example:包含环境变量配置的示例,用于本地开发。.eslintrc、.eslintrc.js:ESLint的配置文件,用于JavaScript代码的格式化和校验。.gitignore:Git的忽略文件,用于指定不需要提交到版本库的文件。.lintstagedrc:Lint-staged配置文件,用于在提交代码前进行格式化。.npmrc:npm的配置文件,用于设置npm的行为。.pre-commit-config.yaml:pre-commit的配置文件,用于在提交代码前执行钩子脚本。.prettierignore、.prettierrc:Prettier的配置文件,用于代码格式化。.python-version:指定Python版本的文件。Justfile:Just任务配置文件,用于定义自动化任务。LICENSE:项目许可证文件,本项目使用GPL-3.0协议。Makefile:Makefile文件,用于定义构建和部署任务。README.en.md、README.md:项目描述文件,分别提供英文和中文版本。jest.config.ts:Jest测试配置文件,用于配置测试环境。package.json:npm项目配置文件,包含项目依赖和脚本。pnpm-lock.yaml、pnpm-workspace.yaml:pnpm的锁文件和工作空间配置文件。pyproject.toml:Python项目配置文件。tsconfig.build.json、tsconfig.json:TypeScript的配置文件。uv.lock:uv工具的锁文件。
2. 项目的启动文件介绍
项目的启动主要涉及两个部分:服务端和客户端。
- 服务端启动:使用
make dev-server命令启动服务端,该命令位于项目根目录下的Makefile文件中。 - 客户端启动:使用
make dev-client命令启动客户端,同样该命令位于项目根目录下的Makefile文件中。
启动后,服务端通常监听在0.0.0.0:8000地址上,而客户端则通常在localhost:8001上提供服务。
3. 项目的配置文件介绍
项目的配置文件主要包括.env.example,它提供了环境变量配置的示例。在本地开发时,你需要根据实际情况将.env.example复制为.env文件,并填入相应的环境变量。
以下是.env.example中的一些示例配置:
# GPT 配置
LLM_API_BASE_URL=https://api.openai.com
LLM_API_KEY=xxx
LLM_MODEL=xxx
# database postgres
DB_HOST=localhost
DB_PORT=15432
DB_NAME=chatbi
DB_USER=chatbi
DB_PASS=12345
# cube service
CUBE_SERVICE_API=http://localhost:4000
这些环境变量包括了API服务的URL和密钥、数据库的连接信息以及数据立方体服务的API地址等。确保在部署或开发前正确配置这些环境变量,以确保应用程序能够正确运行。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



