浏览代码

Reorganize project structure: move source code to src/ folder

Dr-Swopt 1 周之前
父节点
当前提交
d6120f16ed
共有 6 个文件被更改,包括 9 次插入12 次删除
  1. 6 9
      README.md
  2. 0 0
      src/__init__.py
  3. 2 2
      src/main.py
  4. 0 0
      src/schemas.py
  5. 0 0
      src/services/__init__.py
  6. 1 1
      src/services/openai_service.py

+ 6 - 9
README.md

@@ -24,11 +24,7 @@ This project provides a FastAPI-based backend for extracting structured data fro
 
 3. **Run the Server**:
    ```bash
-   python main.py
-   ```
-   Or using uvicorn:
-   ```bash
-   uvicorn main:app --reload
+   uvicorn src.main:app --reload
    ```
 
 ## API Endpoints
@@ -49,9 +45,10 @@ Returns a structured JSON matching the `ExtractionResponse` schema.
 
 ## Project Structure
 
-- `main.py`: Entry point and API endpoints.
-- `schemas.py`: Pydantic models for data validation and structured output.
-- `services/`:
-  - `openai_service.py`: Logic for interacting with OpenAI API.
+- `src/`
+  - `main.py`: Entry point and API endpoints.
+  - `schemas.py`: Pydantic models for data validation and structured output.
+  - `services/`:
+    - `openai_service.py`: Logic for interacting with OpenAI API.
 - `requirements.txt`: Python dependencies.
 - `.env`: Environment variables (not tracked by git).

+ 0 - 0
src/__init__.py


+ 2 - 2
main.py → src/main.py

@@ -2,8 +2,8 @@ import os
 from fastapi import FastAPI, UploadFile, File, Header, HTTPException, status
 from fastapi.middleware.cors import CORSMiddleware
 from typing import Optional
-from services.openai_service import extract_receipt_data
-from schemas import ExtractionResponse
+from src.services.openai_service import extract_receipt_data
+from src.schemas import ExtractionResponse
 from dotenv import load_dotenv
 
 load_dotenv()

+ 0 - 0
schemas.py → src/schemas.py


+ 0 - 0
src/services/__init__.py


+ 1 - 1
services/openai_service.py → src/services/openai_service.py

@@ -2,7 +2,7 @@ import os
 import base64
 from openai import OpenAI
 from dotenv import load_dotenv
-from schemas import ExtractionResponse
+from src.schemas import ExtractionResponse
 
 load_dotenv()