Труды КНЦ. Технические науки. – 2026. - № 1

Труды Кольского научного центра РАН. Серия: Технические науки. 2026. Т. 17, № 1. С. 115-128. Transactions of the Kola Science Centre of RAS. Series: Engineering Sciences. 2026. Vol. 17, No. 1. P. 115-128. # Универсальная функция для запроса кИИ generate_ai_description() { [ "$USE_AI" != true ] &&return local file_content=$(base64 -w0 "$file_path") local json_request=$(jq -n --arg model "$AI_MODEL" \ --arg content "$prompt$file_content" '{ model: $model, messages: [{role: "user", content: $content}], temperature: 0.1, max_tokens: 250 }') local response=$(curl -s -XPOST "$AI_URL" \ -H "Content-Type: application/json" -d "$json_request") echo "$response" | jq -r '.choices[0].message.content' } # Условный вызов LLMтолько при отсутствии описания if [ -z "$unit_desc" ] || [ "$unit_desc" = "..." ]; then unit_desc=$(generate_ai_unit_description "$unit_name" "$file") [ -n "$unit_desc" ] &&xmlstarlet ed -u "/unit/description/detailed" \ -v "$unit_desc" "$xml_file" > "${xml_file}.tmp" Листинг 3. Запрос к LLM для генерирования описаний 4. Г ен ерировани е и связывание вики -докум ентации На этом этапе структурированные и обогащенные метаданные преобразуются в набор связанных Markdown-файлов, формирующих вики-базу знаний. Логика распределена между функциями create_unit_markdown, create_class_markdown, add_properties и generate_markdown_section. # Создание страницы модуля create_unit_markdown() { cat > "$md_file" << EOF # Unit: ${unit_name} ## Общее описание ${unit_desc} ## Структуры (классы) EOF } # Создание страницы класса с перекрёстными ссылками create_class_markdown() { cat > "$class_md" << EOF # Класс: ${class_name} **Наследник:** ${ancestor_name:-нет} **Источник:** [[${unit_name}]] ## Описание ${class_desc} EOF } # Добавление свойства ксуществующей странице if !grep -q "\[\[${unit_name}\]\]" "$class_md"; then echo -e "^^Также встречается в:** [[${unit_name}]]" >> "$class_md" fi Листинг 4. Создание вики-документации © Федоров А. М., Датьев И. О., Илясов М. О., Вишняков И. Г., 2026 1 2 1

RkJQdWJsaXNoZXIy MTUzNzYz