docs: 添加GitHub问题模板和PR模板
This commit is contained in:
parent
96d257a7ac
commit
9c7a5fb4ec
11
.github/ISSUE_TEMPLATE/提交一个提问.md
vendored
Normal file
11
.github/ISSUE_TEMPLATE/提交一个提问.md
vendored
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
---
|
||||||
|
name: 提交一个提问
|
||||||
|
about: 关于项目使用的问题
|
||||||
|
title: 'Question: '
|
||||||
|
labels: question
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
**问题描述**
|
||||||
|
|
||||||
22
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
22
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
## 变更描述
|
||||||
|
简要描述这个 PR 做了什么
|
||||||
|
|
||||||
|
## 变更类型
|
||||||
|
- [ ] 新功能
|
||||||
|
- [ ] Bug 修复
|
||||||
|
- [ ] 文档更新
|
||||||
|
- [ ] 其他
|
||||||
|
|
||||||
|
## 测试
|
||||||
|
- [ ] 已在 Docker 环境测试
|
||||||
|
- [ ] 相关功能正常工作
|
||||||
|
|
||||||
|
**相关日志或者截图**
|
||||||
|
|
||||||
|
|
||||||
|
## 说明
|
||||||
|
(可选)有什么需要特别说明的吗?
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
💡 **提示**: 提交前可以运行 `make lint` 和 `make format` 检查代码规范
|
||||||
@ -224,7 +224,7 @@ async def get_custom_providers(current_user: User = Depends(get_admin_user)):
|
|||||||
custom_providers = config.get_custom_providers()
|
custom_providers = config.get_custom_providers()
|
||||||
return {
|
return {
|
||||||
"providers": {provider: info.model_dump() for provider, info in custom_providers.items()},
|
"providers": {provider: info.model_dump() for provider, info in custom_providers.items()},
|
||||||
"message": "success"
|
"message": "success",
|
||||||
}
|
}
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error(f"获取自定义供应商失败: {e}")
|
logger.error(f"获取自定义供应商失败: {e}")
|
||||||
@ -235,7 +235,7 @@ async def get_custom_providers(current_user: User = Depends(get_admin_user)):
|
|||||||
async def add_custom_provider(
|
async def add_custom_provider(
|
||||||
provider_id: str = Body(..., description="供应商ID"),
|
provider_id: str = Body(..., description="供应商ID"),
|
||||||
provider_data: dict = Body(..., description="供应商配置数据"),
|
provider_data: dict = Body(..., description="供应商配置数据"),
|
||||||
current_user: User = Depends(get_admin_user)
|
current_user: User = Depends(get_admin_user),
|
||||||
):
|
):
|
||||||
"""添加自定义供应商"""
|
"""添加自定义供应商"""
|
||||||
try:
|
try:
|
||||||
@ -253,7 +253,7 @@ async def add_custom_provider(
|
|||||||
async def update_custom_provider(
|
async def update_custom_provider(
|
||||||
provider_id: str,
|
provider_id: str,
|
||||||
provider_data: dict = Body(..., description="供应商配置数据"),
|
provider_data: dict = Body(..., description="供应商配置数据"),
|
||||||
current_user: User = Depends(get_admin_user)
|
current_user: User = Depends(get_admin_user),
|
||||||
):
|
):
|
||||||
"""更新自定义供应商"""
|
"""更新自定义供应商"""
|
||||||
try:
|
try:
|
||||||
@ -283,9 +283,7 @@ async def delete_custom_provider(provider_id: str, current_user: User = Depends(
|
|||||||
|
|
||||||
@system.post("/custom-providers/{provider_id}/test")
|
@system.post("/custom-providers/{provider_id}/test")
|
||||||
async def test_custom_provider(
|
async def test_custom_provider(
|
||||||
provider_id: str,
|
provider_id: str, request: dict = Body(..., description="测试请求"), current_user: User = Depends(get_admin_user)
|
||||||
request: dict = Body(..., description="测试请求"),
|
|
||||||
current_user: User = Depends(get_admin_user)
|
|
||||||
):
|
):
|
||||||
"""测试自定义供应商连接"""
|
"""测试自定义供应商连接"""
|
||||||
try:
|
try:
|
||||||
|
|||||||
@ -26,8 +26,6 @@ from src.config.static.models import (
|
|||||||
from src.utils.logging_config import logger
|
from src.utils.logging_config import logger
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class Config(BaseModel):
|
class Config(BaseModel):
|
||||||
"""应用配置类"""
|
"""应用配置类"""
|
||||||
|
|
||||||
|
|||||||
@ -147,10 +147,7 @@ DEFAULT_CHAT_MODEL_PROVIDERS: dict[str, ChatModelProvider] = {
|
|||||||
base_url="https://api-inference.modelscope.cn/v1/",
|
base_url="https://api-inference.modelscope.cn/v1/",
|
||||||
default="deepseek-ai/DeepSeek-V3.2-Exp",
|
default="deepseek-ai/DeepSeek-V3.2-Exp",
|
||||||
env="MODELSCOPE_ACCESS_TOKEN",
|
env="MODELSCOPE_ACCESS_TOKEN",
|
||||||
models=[
|
models=["Qwen/Qwen3-32B", "deepseek-ai/DeepSeek-V3.2-Exp"],
|
||||||
"Qwen/Qwen3-32B",
|
|
||||||
"deepseek-ai/DeepSeek-V3.2-Exp"
|
|
||||||
],
|
|
||||||
),
|
),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -107,6 +107,7 @@ class BaseEmbeddingModel(ABC):
|
|||||||
logger.error(error_msg)
|
logger.error(error_msg)
|
||||||
return False, error_msg
|
return False, error_msg
|
||||||
|
|
||||||
|
|
||||||
class OllamaEmbedding(BaseEmbeddingModel):
|
class OllamaEmbedding(BaseEmbeddingModel):
|
||||||
"""
|
"""
|
||||||
Ollama Embedding Model
|
Ollama Embedding Model
|
||||||
@ -184,7 +185,6 @@ class OtherEmbedding(BaseEmbeddingModel):
|
|||||||
raise ValueError(f"Other Embedding async request failed: {e}, {payload}, {self.base_url=}")
|
raise ValueError(f"Other Embedding async request failed: {e}, {payload}, {self.base_url=}")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
async def test_embedding_model_status(model_id: str) -> dict:
|
async def test_embedding_model_status(model_id: str) -> dict:
|
||||||
"""
|
"""
|
||||||
测试指定embedding模型的状态
|
测试指定embedding模型的状态
|
||||||
|
|||||||
@ -150,7 +150,7 @@ class MinerUOfficialParser(BaseDocumentProcessor):
|
|||||||
text = self._download_and_extract(zip_url)
|
text = self._download_and_extract(zip_url)
|
||||||
processing_time = time.time() - start_time
|
processing_time = time.time() - start_time
|
||||||
logger.info(
|
logger.info(
|
||||||
f"MinerU Official 处理成功: {os.path.basename(file_path)} - {len(text)} 字符 ({processing_time:.2f}s)"
|
f"MinerU Official: {os.path.basename(file_path)} - {len(text)} 字符 ({processing_time:.2f}s)"
|
||||||
)
|
)
|
||||||
return text
|
return text
|
||||||
|
|
||||||
@ -161,6 +161,7 @@ class MinerUOfficialParser(BaseDocumentProcessor):
|
|||||||
text = processed["markdown_content"]
|
text = processed["markdown_content"]
|
||||||
except Exception:
|
except Exception:
|
||||||
import zipfile
|
import zipfile
|
||||||
|
|
||||||
text = ""
|
text = ""
|
||||||
logger.error(f"从 zip 文件中提取 full.md 失败: {zip_path},使用第一个 md 文件")
|
logger.error(f"从 zip 文件中提取 full.md 失败: {zip_path},使用第一个 md 文件")
|
||||||
with zipfile.ZipFile(zip_path, "r") as zf:
|
with zipfile.ZipFile(zip_path, "r") as zf:
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user