Compare commits
6 Commits
d0aebd17fa
...
8023233bb2
Author | SHA1 | Date | |
---|---|---|---|
![]() |
8023233bb2 | ||
![]() |
2a86b3b5b0 | ||
![]() |
ca1505304e | ||
![]() |
df9260e918 | ||
![]() |
df9aba0c6e | ||
![]() |
6b87dcb58f |
@ -44,12 +44,12 @@ def initialize_prompt_store(db: TinyDB) -> None:
|
||||
# 检查数据库是否为空
|
||||
if not db.all(): # 如果数据库中没有数据
|
||||
db.insert(promptTempleta(
|
||||
id=0,
|
||||
id=1,
|
||||
name="default",
|
||||
description="默认提示词模板",
|
||||
content="""项目名为:{ project_name }
|
||||
content="""项目名为:{project_name}
|
||||
请依据以下该项目官方文档的部分内容,创造合适的对话数据集用于微调一个了解该项目的小模型的语料,要求兼顾文档中间尽可能多的信息点,使用中文
|
||||
文档节选:{ content }""").model_dump())
|
||||
文档节选:{document_slice}""").model_dump())
|
||||
# 如果数据库中已有数据,则跳过插入
|
||||
|
||||
|
||||
|
@ -23,11 +23,11 @@ def dataset_generate_page():
|
||||
with gr.Column():
|
||||
# 获取模板列表并设置初始值
|
||||
prompts = get_prompt_store().all()
|
||||
prompt_choices = [f"{p['id']} {p['name']}" for p in prompts]
|
||||
initial_prompt = prompt_choices[0] if prompt_choices else None
|
||||
prompt_list = [f"{p['id']} {p['name']}" for p in prompts]
|
||||
initial_prompt = prompt_list[0] if prompt_list else None
|
||||
|
||||
prompt_dropdown = gr.Dropdown(
|
||||
choices=prompt_choices,
|
||||
choices=prompt_list,
|
||||
value=initial_prompt, # 设置初始选中项
|
||||
label="选择模板",
|
||||
allow_custom_value=True,
|
||||
|
@ -1,6 +1,7 @@
|
||||
from pydantic import BaseModel, Field
|
||||
from pydantic import BaseModel, Field, field_validator
|
||||
from typing import Optional
|
||||
from datetime import datetime, timezone
|
||||
from langchain.prompts import PromptTemplate
|
||||
|
||||
class promptTempleta(BaseModel):
|
||||
id: Optional[int] = Field(default=None, description="模板ID")
|
||||
@ -11,3 +12,9 @@ class promptTempleta(BaseModel):
|
||||
default_factory=lambda: datetime.now(timezone.utc).isoformat(),
|
||||
description="记录创建时间"
|
||||
)
|
||||
|
||||
@field_validator('content')
|
||||
def validate_content(cls, value):
|
||||
if not "document_slice" in PromptTemplate.from_template(value).input_variables:
|
||||
raise ValueError("模板变量缺少 document_slice")
|
||||
return value
|
@ -1,5 +1,5 @@
|
||||
from .parse_markdown import parse_markdown
|
||||
from .scan_doc_dir import *
|
||||
from .document import *
|
||||
from .json_example import generate_example_json
|
||||
from .model import *
|
||||
from .socket import *
|
||||
from .port import *
|
@ -8,3 +8,8 @@ def find_available_port(start_port):
|
||||
if s.connect_ex(('localhost', port)) != 0: # 端口未被占用
|
||||
return port
|
||||
port += 1 # 如果端口被占用,尝试下一个端口
|
||||
|
||||
if __name__ == "__main__":
|
||||
start_port = 6006 # 起始端口号
|
||||
available_port = find_available_port(start_port)
|
||||
print(f"Available port: {available_port}")
|
Loading…
x
Reference in New Issue
Block a user