First commit
This is base for automatization translating
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
-- Таблица документов (исходных файлов)
|
||||
CREATE TABLE IF NOT EXISTS documents (
|
||||
id SERIAL PRIMARY KEY,
|
||||
filename VARCHAR(255) NOT NULL,
|
||||
file_type VARCHAR(20) NOT NULL, -- pdf, docx, txt, ...
|
||||
original_path TEXT NOT NULL, -- путь к файлу в /data/input
|
||||
output_path TEXT, -- итоговый PDF с переводом
|
||||
source_language VARCHAR(10) DEFAULT 'zh',
|
||||
target_language VARCHAR(10) DEFAULT 'ru',
|
||||
page_count INT,
|
||||
status VARCHAR(30) DEFAULT 'pending', -- pending, processing, completed, failed
|
||||
error_message TEXT,
|
||||
created_at TIMESTAMP NOT NULL DEFAULT NOW(),
|
||||
updated_at TIMESTAMP NOT NULL DEFAULT NOW()
|
||||
);
|
||||
@@ -0,0 +1,37 @@
|
||||
CREATE TABLE IF NOT EXISTS translations (
|
||||
id SERIAL PRIMARY KEY,
|
||||
source_text TEXT NOT NULL,
|
||||
translated_text TEXT NOT NULL,
|
||||
raw_output TEXT,
|
||||
model_name VARCHAR(100) NOT NULL,
|
||||
prompt TEXT NOT NULL,
|
||||
prompt_id INT,
|
||||
created_at TIMESTAMP NOT NULL DEFAULT NOW()
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS golden_examples (
|
||||
id SERIAL PRIMARY KEY,
|
||||
source_text TEXT NOT NULL, -- китайский
|
||||
reference_text TEXT NOT NULL, -- идеальный русский перевод
|
||||
domain VARCHAR(50) DEFAULT 'tech',
|
||||
description TEXT,
|
||||
created_at TIMESTAMP NOT NULL DEFAULT NOW(),
|
||||
created_by VARCHAR(100)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS prompt_runs (
|
||||
id SERIAL PRIMARY KEY,
|
||||
prompt_id INT NOT NULL REFERENCES prompts(id),
|
||||
model_name VARCHAR(100) NOT NULL,
|
||||
golden_example_id INT NOT NULL REFERENCES golden_examples(id),
|
||||
|
||||
source_text TEXT NOT NULL,
|
||||
reference_text TEXT NOT NULL,
|
||||
model_output TEXT NOT NULL,
|
||||
|
||||
llm_score NUMERIC, -- оценка LLM-оценщика (0..10)
|
||||
bleu_score NUMERIC,
|
||||
other_metrics JSONB,
|
||||
|
||||
created_at TIMESTAMP NOT NULL DEFAULT NOW()
|
||||
);
|
||||
@@ -0,0 +1,10 @@
|
||||
CREATE TABLE IF NOT EXISTS translations (
|
||||
id SERIAL PRIMARY KEY,
|
||||
source_text TEXT NOT NULL,
|
||||
translated_text TEXT NOT NULL,
|
||||
raw_output TEXT,
|
||||
model_name VARCHAR(100) NOT NULL,
|
||||
prompt TEXT NOT NULL,
|
||||
prompt_id INT,
|
||||
created_at TIMESTAMP NOT NULL DEFAULT NOW()
|
||||
);
|
||||
@@ -0,0 +1,40 @@
|
||||
-- docker/db/prompts.sql
|
||||
-- Таблица для хранения версий промптов
|
||||
|
||||
CREATE TABLE IF NOT EXISTS prompts (
|
||||
id SERIAL PRIMARY KEY,
|
||||
name VARCHAR(100) NOT NULL, -- логическое имя, напр. 'zh_ru_tech'
|
||||
version INT NOT NULL, -- 1,2,3...
|
||||
body TEXT NOT NULL, -- текст промпта
|
||||
is_active BOOLEAN NOT NULL DEFAULT FALSE,
|
||||
comment TEXT,
|
||||
created_at TIMESTAMP NOT NULL DEFAULT NOW()
|
||||
);
|
||||
|
||||
CREATE UNIQUE INDEX IF NOT EXISTS ux_prompts_name_version
|
||||
ON prompts(name, version);
|
||||
|
||||
-- Первая версия системного промпта zh_ru_tech (config/prompts/zh_ru_tech.v1.md)
|
||||
INSERT INTO prompts (name, version, body, is_active, comment)
|
||||
VALUES (
|
||||
'zh_ru_tech',
|
||||
1,
|
||||
$PROMPT$
|
||||
Ты профессиональный переводчик технической документации с китайского языка на русский.
|
||||
|
||||
Требования к переводу:
|
||||
- Переводи строго на РУССКИЙ язык.
|
||||
- Не добавляй объяснений, комментариев, рассуждений или перевода на другие языки.
|
||||
- Сохраняй структуру исходного текста: абзацы, списки, заголовки.
|
||||
- Не изменяй числа, формулы, единицы измерения и обозначения.
|
||||
- Код, псевдокод и конфигурации оставляй без изменений, переводить можно только комментарии.
|
||||
- Термины переводи последовательно: если один раз перевёл термин определённым образом, используй тот же перевод далее.
|
||||
|
||||
Ответ:
|
||||
- Выведи только готовый перевод на русском языке.
|
||||
- Не добавляй пояснений до или после перевода.
|
||||
$PROMPT$,
|
||||
TRUE,
|
||||
'Базовая версия промпта для техдокументации'
|
||||
)
|
||||
ON CONFLICT (name, version) DO NOTHING;
|
||||
Reference in New Issue
Block a user