1-Intro
project_root/
โโโ app/ # ไธปๅบ็จ็ฎๅฝ
โ โโโ __init__.py
โ โโโ main.py # FastAPIๅบ็จๅ
ฅๅฃ
โ โโโ api/ # API่ทฏ็ฑ
โ โ โโโ __init__.py
โ โ โโโ endpoints/ # ๅไธช็ซฏ็น
โ โ โโโ dependencies.py # ไพ่ต้กน
โ โโโ core/ # ๆ ธๅฟๆจกๅ
โ โ โโโ __init__.py
โ โ โโโ config.py # ้
็ฝฎ็ฎก็
โ โ โโโ logging.py # ๆฅๅฟ้
็ฝฎ
โ โโโ agents/ # LangChain agents
โ โ โโโ __init__.py
โ โ โโโ custom_agent.py
โ โโโ models/ # ๆฐๆฎๆจกๅ
โ โ โโโ __init__.py
โ โ โโโ schemas.py # Pydanticๆจกๅ
โ โโโ services/ # ไธๅก้ป่พ
โ โ โโโ __init__.py
โ โ โโโ some_service.py
โ โโโ utils/ # ๅทฅๅ
ทๅฝๆฐ
โ โโโ __init__.py
โ โโโ helpers.py
โโโ tests/ # ๆต่ฏ็ฎๅฝ
โ โโโ __init__.py
โ โโโ conftest.py
โ โโโ test_*.py
โโโ .env # ็ฏๅขๅ้(ไธๆไบคๅฐgit)
โโโ .env.example # ็ฏๅขๅ้็คบไพ
โโโ .gitignore
โโโ pyproject.toml # ้กน็ฎไพ่ต(Poetry)
โโโ README.md
โโโ docker-compose.yml # Docker้
็ฝฎ
1)-Python ็ๆฌ่่
ๅฝๅ 2025ๅนด3ๆๅ็้ๆฉ:
Python 3.12๏ผๆๆฐ็จณๅฎ็๏ผ
โข ๅๅธไบ2023ๅนด10ๆ
โข ไผ็น๏ผ
โช ๆง่ฝๆพ่ๆๅ
โช ๆดๅฅฝ็้่ฏฏๆ็คบๅ่ฐ่ฏไฝ้ช
โช ๆน่ฟ็็ฑปๅๆณจ่งฃๆฏๆ
โช ไผๅ็ๅฏๅจๆถ้ด
โข ่่ๅ ็ด ๏ผ
โช ไธไบ็ฌฌไธๆนๅบๅฏ่ฝๅฐๆชๅฎๅ
จๆฏๆ
Python 3.11
โข ไผ็น๏ผ
โช ๆฏPython 3.10ๅฟซ10-60%
โช ๆด่ฏฆ็ป็้่ฏฏ่ฟฝ่ธช
โช ่ฏๅฅฝ็ๅบๅ
ผๅฎนๆง
โข ้ๅธธ้ๅๅคงๅคๆฐๆฐ้กน็ฎ
Python 3.10
โข ไผ็น๏ผ
โช ็จณๅฎไธๆ็
โช ๅ ไนๆๆไธปๆตๅบ้ฝๆฏๆ
โช ๅผๅ
ฅไบๆจกๅผๅน้
็ญๅฎ็จๅ่ฝ
2)-ไพ่ตๅ ผๅฎนๆง้ฎ้ข่่
pip install pip-toolsไฝฟ็จ pip-compile, ๅๅปบไธไธช็ฎๅ็ requirements.in ๆไปถ.
# requirements.in
fastapi
langchain
uvicorn
ไฝฟ็จๅฆไธ็ๅฝไปค็ๆๅธฆๆ็ฒพ็กฎ็ๆฌ.
pip-compile requirements.in
# ๆ่
ไธ้่ฆๆณจ่งฃ
pip-compile --no-annotate requirements.inๆณจๆ๏ผ ไปไผ็ๆๅพๅค็้ดๆฅไพ่ต,
3)-unicorn ็ IO ๆจกๅ
่ด่ฝฝๅ่กกๅจ
โ
โโโ Gunicorn/Uvicornไธป่ฟ็จ
โ โ
โ โโโ ๅทฅไฝ่ฟ็จ 1
โ โ โ
โ โ โโโ ไธป็บฟ็จ (่ฟ่กไบไปถๅพช็ฏ)
โ โ โ
โ โ โโโ ๅ็จ 1 (ๅค็่ฏทๆฑ 1)
โ โ โโโ ๅ็จ 2 (ๅค็่ฏทๆฑ 2)
โ โ โโโ ...
โ โ
โ โโโ ๅทฅไฝ่ฟ็จ 2
โ โ โ
โ โ โโโ ไธป็บฟ็จ (่ฟ่กไบไปถๅพช็ฏ)
โ โ โ
โ โ โโโ ๅ็จ 1 (ๅค็่ฏทๆฑ 3)
โ โ โโโ ๅ็จ 2 (ๅค็่ฏทๆฑ 4)
โ โ โโโ ...
โ โ
โ โโโ ...
โ
โโโ ๅฏ่ฝ็็บฟ็จๆฑ (็จไบCPUๅฏ้ๅไปปๅก)
โ
โโโ ๅทฅไฝ็บฟ็จ 1
โโโ ๅทฅไฝ็บฟ็จ 2
โโโ ...