Модуль:AIMeta

Материал из Поле цифровой дидактики

Краткое описание

Модуль AIMETA добавляет в конец страницы компактный блок‑подпись о том, какая AI‑система использовалась при создании или доработке материала.

Он:

  • принимает название системы ИИ (например, «ChatGPT», «Perplexity», «ЯндексGPT») как параметр;
  • оформляет подпись в виде серой полосы с текстом вида AI: Название системы;
  • ничего не выводит, если параметр не задан (страница остаётся без подписи).

Используется для прозрачной фиксации участия генеративного ИИ в создании учебного контента и активных эссе.

Использование

Простейший вызов:

{{#invoke:AIMETA|render|AI system used=Perplexity}}

или с позиционным параметром:

{{#invoke:AIMETA|render|Perplexity}}

local p = {}

local function trim(s)
	if s == nil then
		return nil
	end
	s = mw.text.trim(tostring(s))
	if s == '' then
		return nil
	end
	return s
end

function p.render(frame)
	local args = frame.args
	local aiSystem = trim(args['AI system used'] or args[1])

	if not aiSystem then
		return ''
	end

	local root = mw.html.create('div')
	root
		:css('clear', 'both')
		:css('margin-top', '1em')
		:css('padding', '0.45em 0.7em')
		:css('font-size', '0.82em')
		:css('line-height', '1.35')
		:css('color', '#777')
		:css('background', '#fafafa')
		:css('border-top', '1px solid #e8e8e8')

	root:tag('span'):wikitext('AI: [[' .. aiSystem .. ']]')

	return tostring(root)
end

return p