Архитектура ансамбля LLM срочно

Руслан4 дня в сервисе
Данные заказчика будут вам доступны после подачи заявки
09.09.2025

Что нужно сделать

Определить входные/выходные контракты JSON для пайплайна НИР, ввести статусы шагов и разработать основные API-эндпоинты для управления пайплайном.

Требования

Входной контракт: PipelineInput extends OrderRequest — все поля базовой модели обязательны, включая order_type: enum { ai, verified }.

Выходной контракт: Определить PipelineOutput — результаты шагов, статус, artifacts (search_ids, hypotheses, report_path).

Статусы шагов: Ввести enum с переходами init → prepare → lit_review → pat_search → evidence → hypotheses → novelty → feasibility → gost→ final_report → done/failed.

API-эндпоинты:

POST /orders/{order_id}/pipeline/generate — запуск пайплайна для существующего заказа, возврат pipeline_id.

GET /pipeline/{id}/status — текущий статус, прогресс по шагам.

GET /pipeline/{id}/result — финальный результат при завершении.

POST /pipeline/{id}/cancel— отмена выполнения.

POST /pipeline/{id}/resume— возобновление с чекпоинта.

Модели: Создать Pydantic-модели для PipelineInput, PipelineOutput, PipelineStatusс валидацией.

Документация: Добавить примеры JSON в FastAPI docs с кодами ошибок (400/404/409).

Критерии готовности

 Определены и документированы контракты PipelineInput и PipelineOutput.

 PipelineActor корректно извлекает данные заказа из БД по order_id.

 Статусы шагов реализованы с корректными переходами.

 API-эндпоинты /orders/{order_id}/pipeline/generate работают по контракту.

 Модели Pydantic валидируют входные данные.

 FastAPI docs содержат примеры JSON и обработку ошибок.


Авторизуйтесь для подачи заявки