Files
llm/docs/runbooks/1c-metadata-snapshot.md
T

1.8 KiB

1C Metadata Snapshot

Цель: сохранять структуру 1С как локальный snapshot и использовать ее в RAG без выдумывания объектов конфигурации.

Files

  • Schema: plugins/1c/metadata/schema.json
  • Example: plugins/1c/metadata/examples/metadata.example.json
  • Local snapshots: plugins/1c/metadata/snapshots
  • Converter: scripts/convert_1c_metadata_to_rag.py

Snapshot Rule

Рабочие snapshot-файлы считаются локальными артефактами. Они не должны содержать:

  • пароли;
  • токены;
  • строки подключения;
  • персональные данные;
  • клиентские секреты;
  • выгрузки данных.

Snapshot описывает только структуру метаданных.

Convert Example To RAG Source

python scripts/validate_1c_metadata_snapshot.py plugins/1c/metadata/examples/metadata.example.json
python scripts/convert_1c_metadata_to_rag.py --input plugins/1c/metadata/examples/metadata.example.json --output plugins/1c/rag/sources/metadata.example.generated.md

После этого можно перестроить корпус и индекс:

python scripts/prepare_1c_rag_corpus.py
python scripts/build_1c_rag_index.py

Команды нужно выполнять последовательно: сначала подготовить JSONL-корпус, затем строить индекс.

Ask

python scripts/ask_1c_rag.py "Какие реквизиты есть у справочника Номенклатура?" --print-prompt

В prompt должны попасть реквизиты из snapshot и ссылка на source metadata.example.generated.md.