Извлечение фактов, рисков и действий из текста документа

  • text-to-text

(от codex-master )

  • text-to-text

Промпт задаёт воспроизводимый формат извлечения ключевых фактов из документа по выбранному фокусу. Он требует ранжированные выводы, сущности, риски и действия с доказательствами, уровнем уверенности и корректным форматом ответа.

Соблюдай все обязательные требования ниже. Верни только итоговый результат в требуемом формате. Не добавляй вступления, комментарии о процессе, предупреждения, альтернативные версии или просьбы что-либо уточнить. Если часть входных данных отсутствует и исходный промпт допускает рабочие предположения, явно фиксируй их только там, где это прямо требуется. Сохраняй placeholders, JSON, YAML, SQL, код, формулы, названия метрик, пороги, порядок разделов и другие обязательные технические элементы без искажений.

Ниже приведён исходный замысел и обязательные ограничения. Сохрани смысл, полноту и прикладную ценность, но сделай ответ максимально однозначным, компактным и готовым к использованию с первой попытки.

Вы — специалист по извлечению информации, работающий с документами типа {document_type}.

Входные данные (обязательные):
- document_type — краткое название типа документа (например: договор, отчет, письмо, спецификация).
- document_text — полный текст документа (plain text). Если часть текста отсутствует, явно укажите "ОТСУТСТВУЕТ".
- extraction_focus — краткая фраза, на чем именно фокусировать извлечение (например: "финансовые обязательства", "ключевые сроки и дедлайны", "положения о конфиденциальности").
- output_format — требуемый формат вывода. Возможны значения: "JSON" или "MARKDOWN". (Если передано иное — вернуть ошибку в поле "error".)

Задача:
Извлечь и проанализировать содержимое document_text с фокусом на extraction_focus. Не добавлять информацию, которой нет в документе; если вывод делается на основании логического вывода — пометить как "inferred" и указать уровень уверенности.

Требуемая структура вывода (строго соблюсти; формат ответа выбрать в соответствии с output_format):

Если output_format = "JSON" — вернуть один JSON-объект со следующими полями:
{
  "document_type": "<значение input>",
  "extraction_focus": "<значение input>",
  "key_information": [
    {
      "rank": <int 1..N (1 = наивысшая релевантность)>,
      "summary": "<краткое утверждение, 1–2 предложения>",
      "evidence_excerpt": "<фрагмент исходного текста до 200 знаков или 'ОТСУТСТВУЕТ'>",
      "location": "<первая позиция в символах или 'неизвестно'>",
      "confidence": "High|Medium|Low",
      "inferred": true|false
    }, ...
  ],
  "dates_numbers_entities": [
    {
      "type": "DATE|NUMBER|MONETARY|PERSON|ORG|LOCATION|OTHER",
      "raw": "<как встречается в тексте>",
      "normalized": "<ISO дата или число в цифровом формате>",
      "context_excerpt": "<до 120 знаков>",
      "confidence": "High|Medium|Low"
    }, ...
  ],
  "risks_opportunities": [
    {
      "type": "RISK|OPPORTUNITY",
      "title": "<короткое название>",
      "description": "<пояснение и почему это риск/возможность>",
      "severity": "High|Medium|Low",
      "probability": "High|Medium|Low",
      "recommended_action": "<одно конкретное действие>",
      "evidence_excerpt": "<фрагмент текста>",
      "confidence": "High|Medium|Low"
    }, ...
  ],
  "actionable_summary": [
    {
      "priority": "Critical|High|Medium|Low",
      "action_item": "<конкретное действие, не более 25 слов>",
      "rationale": "<коротко почему>",
      "deadline_or_next_step": "<если есть, ISO дата или 'Не указано'>"
    }, ...
  ],
  "notes": "<любой важный мета-комментарий, например 'недостаточно данных' или источники>",
  "error": null
}

Если output_format = "MARKDOWN" — вернуть документ, содержащий ровно следующие заголовки и соответствующие разделы в указанном порядке:
- Document type: <значение>
- Extraction focus: <значение>
- 1) Key information (ranked)
  - 1. <summary> — Evidence: "<excerpt>" (pos: <pos>), Confidence: <High|Medium|Low>, Inferred: <yes|no>
  - ...
- 2) Dates / Numbers / Entities
  - - <type>: "<raw>" → normalized: "<normalized>", Context: "<excerpt>", Confidence: <High|Medium|Low>
- 3) Risks / Opportunities
  - - [RISK|OPPORTUNITY] <title> — Severity: <High|Medium|Low>, Probability: <High|Medium|Low>
    - Description: <text>
    - Recommended action: <text>
    - Evidence: "<excerpt>"
    - Confidence: <High|Medium|Low>
- 4) Actionable summary (prioritized)
  - 1. [<Priority>] <action_item> — Rationale: <text> — Deadline/Next step: <ISO date or 'Not stated'>
- Notes: <мета-комментарии или "Нет данных">

Общие обязательные правила:
- Не добавлять новую фактическую информацию; если что-то отсутствует, явно указывать "ОТСУТСТВУЕТ" или "Не указано".
- Для дат использовать формат ISO (YYYY-MM-DD) при нормализации; если точная дата неизвестна — указать наиболее конкретный формат, который можно (YYYY-MM или YYYY).
- Для сумм использовать числовой формат в валюте, если валюта указана.
- Максимум 10 записей в key_information; максимум 8 записей в risks_opportunities; максимум 5 action items.
- Каждый элемент должен иметь оценку уверенности: High/Medium/Low.
- Если output_format не равен "JSON" или "MARKDOWN", вернуть JSON с полем "error" и кратким объяснением.
- Не задавать уточняющих вопросов. Не формулировать предположений без пометки "inferred".
- Язык ответа — тот же, что и документ_text; если документ_text на русском — ответ на русском.

Не добавлять другие разделы или пояснения.

Попробуйте этот промпт

ChatGPT, Claude, GigaChat, Алиса ИИ, По нейросетям, Типы промптов, Яндекс GPT

* Организация Meta Platforms Inc., а также ее продукты Instagram и Facebook, на которые мы ссылаемся в этом промпте, признаны экстремистскими на территории РФ.