mirror of
https://18126008609:longquanjian123@gitee.com/feigong123/aurask.git
synced 2026-04-20 00:48:24 +00:00
124 lines
3.2 KiB
Markdown
124 lines
3.2 KiB
Markdown
# Aurask API
|
||
|
||
`api/` 包含 Aurask 后端服务与外部组件桥接配置。
|
||
|
||
## 当前实现范围
|
||
|
||
- HTTP 网关:`api/aurask/api.py`
|
||
- 应用装配:`api/aurask/app.py`
|
||
- 租户、用户、API Key、Session:`api/aurask/auth.py`
|
||
- 套餐、订单、支付、TBU:`api/aurask/plans.py`、`api/aurask/billing.py`、`api/aurask/quota.py`
|
||
- 工作流编排:`api/aurask/orchestrator.py`
|
||
- AnythingLLM workspace / 文档接入门面:`api/aurask/knowledge_base.py`
|
||
- PostgreSQL / PGVector / Redis / AnythingLLM / Langflow 桥接:`api/aurask/bridges/`
|
||
- 门户站点配置:`api/aurask/site_config.py`
|
||
|
||
## 认证模式
|
||
|
||
Aurask 现在支持两类 Bearer Token:
|
||
|
||
1. API Key
|
||
- 适用于接口集成、自动化脚本
|
||
- 由创建租户/用户或 demo bootstrap 返回
|
||
2. Session Token
|
||
- 适用于 `protal/` 登录态
|
||
- 由 Google 登录接口签发
|
||
|
||
## 公开接口
|
||
|
||
```text
|
||
GET /health
|
||
GET /plans
|
||
GET /auth/config
|
||
POST /auth/google/login
|
||
POST /demo/bootstrap
|
||
POST /tenants
|
||
```
|
||
|
||
## 鉴权接口
|
||
|
||
```text
|
||
GET /auth/session
|
||
POST /auth/logout
|
||
GET /me
|
||
GET /quota
|
||
GET /workflow-templates
|
||
GET /workspaces
|
||
POST /workspaces
|
||
POST /documents
|
||
POST /orders
|
||
POST /payments/match
|
||
POST /workflow-runs
|
||
GET /workflow-runs/{run_id}
|
||
GET /admin/bridge-status
|
||
```
|
||
|
||
## 门户与嵌入配置
|
||
|
||
`GET /auth/config` 会向前端返回:
|
||
|
||
- 公网站点地址
|
||
- API 地址
|
||
- Google 开关
|
||
- Langflow / AnythingLLM iframe 地址
|
||
- DevCloud 对齐后的镜像与 NodePort 默认值
|
||
|
||
## 环境变量
|
||
|
||
### 门户 / 登录
|
||
|
||
```text
|
||
AURASK_PUBLIC_BASE_URL=https://aurask.xyz
|
||
AURASK_PUBLIC_API_BASE_URL=https://aurask.xyz/api
|
||
AURASK_PUBLIC_LANGFLOW_URL=https://aurask.xyz/runtime/langflow/
|
||
AURASK_PUBLIC_ANYTHINGLLM_URL=https://aurask.xyz/runtime/anythingllm/
|
||
AURASK_GOOGLE_ENABLED=true
|
||
AURASK_GOOGLE_CLIENT_ID=<google-client-id>
|
||
AURASK_GOOGLE_TOKENINFO_URL=https://oauth2.googleapis.com/tokeninfo
|
||
AURASK_GOOGLE_ALLOW_UNVERIFIED_ID_TOKEN=false
|
||
AURASK_SESSION_TTL_DAYS=7
|
||
AURASK_CORS_ALLOW_ORIGIN=https://aurask.xyz
|
||
```
|
||
|
||
### 运行时桥接
|
||
|
||
```text
|
||
AURASK_USE_EXTERNAL_BRIDGES=true
|
||
AURASK_DATABASE_URL=postgresql://aurask:<password>@postgres.aurask-data.svc.cluster.local:5432/aurask
|
||
AURASK_POSTGRES_MIN_CONNECTIONS=1
|
||
AURASK_POSTGRES_MAX_CONNECTIONS=10
|
||
AURASK_PGVECTOR_TABLE=aurask_vectors
|
||
AURASK_PGVECTOR_DIMENSION=1536
|
||
AURASK_REDIS_URL=redis://redis.aurask-data.svc.cluster.local:6379/0
|
||
AURASK_REDIS_WORKFLOW_QUEUE=aurask:workflow-runs
|
||
AURASK_ANYTHINGLLM_BASE_URL=http://anythingllm.aurask-runtime.svc.cluster.local:3001
|
||
AURASK_ANYTHINGLLM_API_KEY=<anythingllm-api-key>
|
||
AURASK_LANGFLOW_BASE_URL=http://langflow-runtime.aurask-runtime.svc.cluster.local:7860
|
||
AURASK_LANGFLOW_API_KEY=<langflow-api-key>
|
||
```
|
||
|
||
## DevCloud 默认值
|
||
|
||
已内置以下默认值以对齐 `devcloud` 当前部署:
|
||
|
||
```text
|
||
AURASK_DEVCLOUD_API_IMAGE=registry.mydevcloud.love/devcloud/aurask-api:latest
|
||
AURASK_DEVCLOUD_WEB_IMAGE=registry.mydevcloud.love/devcloud/aurask-web:latest
|
||
AURASK_DEVCLOUD_API_NODE_URL=http://45.113.2.55:30091
|
||
AURASK_DEVCLOUD_WEB_NODE_URL=http://45.113.2.55:30090
|
||
```
|
||
|
||
## 示例请求
|
||
|
||
接口示例文件:
|
||
|
||
- `api/requests/aurask-api.http`
|
||
|
||
## 本地验证
|
||
|
||
```powershell
|
||
$env:PYTHONPATH='api'
|
||
py -3 -m aurask serve --reset --host 127.0.0.1 --port 8080
|
||
cmd /c "py -3 -m unittest discover -s tests -v"
|
||
```
|