GenAI Stack 项目教程
genai-stackAn End to End GenAI Framework项目地址:https://gitcode.com/gh_mirrors/gen/genai-stack
1. 项目的目录结构及介绍
GenAI Stack 项目的目录结构如下:
genai-stack/
├── README.md
├── env.example
├── utils.py
├── config/
│ ├── __init__.py
│ ├── settings.py
├── src/
│ ├── __init__.py
│ ├── main.py
│ ├── models/
│ │ ├── __init__.py
│ │ ├── model1.py
│ │ ├── model2.py
│ ├── services/
│ │ ├── __init__.py
│ │ ├── service1.py
│ │ ├── service2.py
│ ├── utils/
│ │ ├── __init__.py
│ │ ├── helper1.py
│ │ ├── helper2.py
├── tests/
│ ├── __init__.py
│ ├── test_main.py
│ ├── test_models/
│ │ ├── __init__.py
│ │ ├── test_model1.py
│ │ ├── test_model2.py
│ ├── test_services/
│ │ ├── __init__.py
│ │ ├── test_service1.py
│ │ ├── test_service2.py
│ ├── test_utils/
│ │ ├── __init__.py
│ │ ├── test_helper1.py
│ │ ├── test_helper2.py
目录结构介绍
README.md
: 项目说明文档。env.example
: 配置文件模板。utils.py
: 工具函数文件。config/
: 配置文件目录。settings.py
: 主要配置文件。
src/
: 源代码目录。main.py
: 项目启动文件。models/
: 数据模型目录。services/
: 业务逻辑目录。utils/
: 工具函数目录。
tests/
: 测试代码目录。
2. 项目的启动文件介绍
项目的启动文件是 src/main.py
。该文件包含了项目的入口点,负责初始化配置、加载模型和服务,并启动应用。
启动文件主要内容
# src/main.py
import os
from config import settings
from models import Model1, Model2
from services import Service1, Service2
from utils import helper1, helper2
def main():
# 初始化配置
settings.init()
# 加载模型
model1 = Model1()
model2 = Model2()
# 初始化服务
service1 = Service1(model1)
service2 = Service2(model2)
# 启动应用
service1.start()
service2.start()
if __name__ == "__main__":
main()
3. 项目的配置文件介绍
项目的配置文件位于 config/settings.py
。该文件包含了项目的所有配置项,如数据库连接、API 地址等。
配置文件主要内容
# config/settings.py
import os
class Settings:
def __init__(self):
self.OLLAMA_BASE_URL = os.getenv('OLLAMA_BASE_URL', 'http://host.docker.internal:11434')
self.NEO4J_URI = os.getenv('NEO4J_URI', 'neo4j://database:7687')
self.NEO4J_USERNAME = os.getenv('NEO4J_USERNAME', 'neo4j')
self.NEO4J_PASSWORD = os.getenv('NEO4J_PASSWORD', 'password')
self.LLM = os.getenv('LLM', 'llama2')
settings = Settings()
配置文件使用方法
- 复制
env.example
文件并重命名为.env
。 - 根据需要修改
.env
文件中的配置项。 - 在项目启动时,配置文件会自动加载并应用这些配置项。
# .env 文件示例
OLLAMA_BASE_URL
genai-stackAn End to End GenAI Framework项目地址:https://gitcode.com/gh_mirrors/gen/genai-stack