Files
chatballs/apps/backend/hub_platform/ai/admin.py
T
AndreyandClaude Fable 5 a086675283 refactor(ai): упрощение агента и знаний (ADR-HUB-0023)
Знания: плоская сущность Knowledge (заголовок, описание, MD) + файловые
вложения с оригинальными именами (retrieval из md/txt/pdf/docx, публичная
ссылка для клиента). Агент: без релизов, инструкции из трёх частей
(персонализация/тон/инструкции) + выбор знаний из библиотеки; лимит
диалогов упразднён (остался dailyCostUsd). channel.system_prompt/model
удалены — AI-поведение только на агенте. Продукт — техническая запись
без summary/sales_description. Data-миграция переносит опубликованные
документы и активные релизы в новую модель. Internal-UI: раздел Знания,
новая карточка агента, упрощённые продукты, release-страницы удалены.
ADR-0005/0007/0017 → superseded; SPEC-HUB-0012 переписан.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-10 17:08:50 +03:00

26 lines
798 B
Python

from django.contrib import admin
from hub_platform.ai.models import AIAgent, Knowledge, KnowledgeAttachment
class KnowledgeAttachmentInline(admin.TabularInline):
model = KnowledgeAttachment
extra = 0
readonly_fields = ("public_id", "size", "content_type", "created_at")
@admin.register(AIAgent)
class AIAgentAdmin(admin.ModelAdmin):
list_display = ("name", "channel", "model", "is_active")
list_filter = ("is_active",)
search_fields = ("name", "channel__code")
filter_horizontal = ("knowledge_items",)
@admin.register(Knowledge)
class KnowledgeAdmin(admin.ModelAdmin):
list_display = ("title", "organization", "is_enabled", "updated_at")
list_filter = ("is_enabled",)
search_fields = ("title", "description")
inlines = [KnowledgeAttachmentInline]