feat: 开发采集插件

This commit is contained in:
R524809
2026-08-11 17:09:23 +08:00
parent 6c4356de24
commit b27e42dc75
148 changed files with 6898 additions and 9691 deletions
+3
View File
@@ -0,0 +1,3 @@
from config.settings import Settings, get_settings
__all__ = ["Settings", "get_settings"]
+26
View File
@@ -0,0 +1,26 @@
# 模型目录(可入库)。密钥不写在这里,只引用 .env 中的环境变量名。
default: deepseek-v4-flash
models:
- id: deepseek-v4-flash
label: deepseek-v4-flash(快/省)
provider: deepseek
api_model: deepseek-v4-flash
base_url: https://api.deepseek.com
api_key_env: DEEPSEEK_API_KEY
max_tokens: 4000
# 本任务的提示词会让思维链一直推理到耗尽 max_tokens、正文为空,必须关闭。
params:
thinking:
type: disabled
- id: deepseek-v4-pro
label: deepseek-v4-pro(质量更好)
provider: deepseek
api_model: deepseek-v4-pro
base_url: https://api.deepseek.com
api_key_env: DEEPSEEK_API_KEY
max_tokens: 4000
params:
thinking:
type: disabled
+36
View File
@@ -0,0 +1,36 @@
from functools import lru_cache
from pathlib import Path
from dotenv import load_dotenv
from pydantic_settings import BaseSettings, SettingsConfigDict
# .env 在仓库根(server/ 的上一级),供各部分共用
_ROOT_DIR = Path(__file__).resolve().parents[2]
load_dotenv(_ROOT_DIR / ".env")
class Settings(BaseSettings):
"""运行时与密钥。模型清单见 config/models.yaml。"""
model_config = SettingsConfigDict(
env_file=str(_ROOT_DIR / ".env"),
env_file_encoding="utf-8",
extra="ignore",
)
deepseek_api_key: str = ""
openai_api_key: str = ""
host: str = "127.0.0.1"
port: int = 8000
cors_origins: str = ""
@property
def cors_origin_list(self) -> list[str]:
if not self.cors_origins.strip():
return []
return [o.strip() for o in self.cors_origins.split(",") if o.strip()]
@lru_cache
def get_settings() -> Settings:
return Settings()