feat: 调整结构

This commit is contained in:
李如威 2026-01-07 17:28:47 +08:00
parent debd807416
commit 5cb4b51c6c
8 changed files with 30 additions and 7 deletions

22
prompt.txt Normal file
View File

@ -0,0 +1,22 @@
我现在要实现一个AI应用后台服务主要功能包括 RAG、Agent 、Guard 等功能模块。主要思想是通过 pocket-flow 把服务核心功能逻辑拆解通过 flow 组合对应的功能模块。
# 角色
你是一个资深的 python 领域工程师
# 技术
1. api 服务使用 fastapi 框架
2. orm 使用 tortoise-orm
3. 测试框架使用 pytest-asyncio
4. 预留前端代码部署文件夹,后续通过 nginx 容器启动前端服务
5. celery 处理 redis 中的任务队列
6. 使用 cython 对最终交付代码进行打包 (生成 docker image
# 其他要求
1. 重新整理当前项目结构 ai_pipeline
2. 给出最符合现代敏捷开发的项目结构
3. 给出部署相关配置文件,使用 docker
4. 使用 src 项目结构

View File

@ -1,7 +1,7 @@
from mimetypes import init from mimetypes import init
from typing import TypedDict from typing import TypedDict
from dotenv import load_dotenv from dotenv import load_dotenv
from src.pipeline.core.utils import logger from src.pipeline.utils import logger
import os import os
load_dotenv() load_dotenv()

View File

@ -1,7 +1,7 @@
import httpx import httpx
from datetime import datetime, timezone from datetime import datetime, timezone
from src.pipeline.config import config from src.pipeline.config import config
from src.pipeline.core.utils import logger from src.pipeline.utils import logger
class AsyncES: class AsyncES:

View File

@ -1,7 +1,7 @@
import httpx import httpx
import json import json
from src.pipeline.config import config from src.pipeline.config import config
from src.pipeline.core.utils import logger from src.pipeline.utils import logger
class AsyncLLm: class AsyncLLm:

View File

@ -1,7 +1,7 @@
import uuid import uuid
import re import re
from src.pipeline.core.pocket_flow import AsyncBatchNode, AsyncNode from src.pipeline.core.pocket_flow import AsyncBatchNode, AsyncNode
from src.pipeline.core.utils import fixed_size_chunk, load_document, logger, baidu_search_async, parse_llm_json from src.pipeline.utils import fixed_size_chunk, load_document, logger, baidu_search_async, parse_llm_json
from src.pipeline.core import llm from src.pipeline.core import llm
from src.pipeline.core import es from src.pipeline.core import es
from itertools import chain from itertools import chain

View File

@ -3,9 +3,10 @@ from platform import node
import pytest import pytest
import json import json
from src.pipeline.core.pocket_flow import AsyncFlow from src.pipeline.core.pocket_flow import AsyncFlow
from src.pipeline.core.utils import logger from src.pipeline.utils import logger
from src.pipeline.core import llm, es, nodes, utils from src.pipeline.core import llm, es, nodes
from src.pipeline.core.skills import load_skills from src.pipeline.core.skills import load_skills
from src.pipeline import utils
@pytest.fixture(scope="session") @pytest.fixture(scope="session")

View File

@ -1,6 +1,6 @@
import pytest import pytest
import json import json
from src.pipeline.core.utils import logger, baidu_search_async from src.pipeline.utils import logger, baidu_search_async
from src.pipeline.core.skills import load_skills from src.pipeline.core.skills import load_skills
@pytest.mark.asyncio @pytest.mark.asyncio