paint-brush
Утечка информации о системе Claude Sonnet 3.5: судебно-медицинский анализк@tyingshoelaces
5,646 чтения
5,646 чтения

Утечка информации о системе Claude Sonnet 3.5: судебно-медицинский анализ

к tyingshoelaces.com9m2024/06/24
Read on Terminal Reader
Read this story w/o Javascript

Слишком долго; Читать

Криминалистический анализ утечки информации из системы Claude Sonnet 3.5. Артефакты предназначены для структурированных задач вывода, таких как генерация кода, векторный поиск для преобразования, система поиска и извлечения для определенного вывода.

Companies Mentioned

Mention Thumbnail
Mention Thumbnail

Coins Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Утечка информации о системе Claude Sonnet 3.5: судебно-медицинский анализ
tyingshoelaces.com HackerNoon profile picture
0-item

Оглавление

  • Представляем артефакты

    Шаг вперед в формировании структурированного результата.


  • мышление

    Логическое мышление является ключевой частью процесса генерации.


  • Идентификаторы и поиск

    Поиск и извлечение артефактов — ключевая часть системной подсказки.


  • Языковая структура шаблонов

    Шаблон рендеринга, который будет меняться в зависимости от входных переменных.


  • Заключение

    Один маленький артефакт для Клода, гигантский скачок для ИИ.


  • Система Клод 3.5

    Система подскажет полностью

Представляем артефакты

Шаг вперед в формировании структурированного результата.


Это анализ генерации системных подсказок для Claude 3.5 Sonnet. Ссылка на код для этого анализа доступна внизу рядом с исходником. Основное внимание в этом анализе уделяется представлению концепции артефактов и тому, как она может работать как часть интеллектуальной системы категоризации и поиска.


«Артефакты предназначены для существенного, автономного контента, который пользователи могут изменять или повторно использовать.


Артефакт — это смена парадигмы, поскольку он формализует новую концепцию. Понятие постоянных данных. Постоянные данные — это ступенька на пути к доступу к тщательно подобранной и структурированной библиотеке контента. Предоставляя фиксированные ссылки, мы разблокируем итерацию и возможность постепенно улучшать и уточнять выходные данные. Это шаг к контролю эфемерного характера подробного вывода LLM.


Одна из присущих генеративному ИИ проблем для функциональных задач, таких как завершение кода, заключается в том, что они часто повторяют целые файлы для простых изменений. Существует огромный спрос на функцию «различия», с помощью которой мы выводим разницу между «до» и «после», а не повторяем один и тот же контент.


Таким образом, артефакты служат двойной цели; во-первых, они служат ориентиром для того, как и где нам нужен результат. Это похоже на настройку области действия или определение контрольной точки. Это не позволит LLM потерять фокус на исходной проблеме, а также сохранит структуру и категоризацию выходных данных.


В качестве бонуса у нас также есть функция автозаполнения. Определив «базовый» код и объем изменений, мы теперь направили наш LLM на конкретную задачу или проблему, взвешенно и тщательно. Это предотвращает беспорядочные изменения масштаба, а также отображает всю незавершенную работу в подсказке. Любой инженер, который случайно стер свой код с помощью «Остальный код здесь», благодарит вас. Здесь мы можем увидеть настройку области:


«Самостоятельное, сложное содержание, которое можно понять само по себе, без контекста разговора.


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


Все это сочетается с архитектурой поиска. Имея глубокую библиотеку тщательно подобранных артефактов, мы теперь можем направить нашу систему на извлечение данных из контролируемого набора данных. Мы знаем, что все крупные поставщики ИИ уделяют большое внимание инвестициям в высококачественные тщательно подобранные данные. Артефакты — это шаг к оформлению подробного ввода и вывода в структуру.


В подсказке мы можем увидеть фокус от ввода и сопоставления с системным исследованием. Вот пример некоторых критериев исключения:


«Контент, который зависит от текущего разговорного контекста, может быть полезным.

Контент, который вряд ли будет изменен или повторен пользователем.

Запрос от пользователей, который выглядит как разовый вопрос.


Подсказка активно фокусируется на системном контексте и поставленной задаче. Подсказка явно пытается отфильтровать вводимые данные, которые не имеют отношения к конкретному выводу. Таким образом, артефакт выступает в качестве конкретной точки отсчета как в генерируемом тексте, так и в качестве структурированных данных за кулисами. Это дает нам быстрый и точный поиск и фокусировку. Что-то очень полезное для...

мышление

Логическое мышление является ключевой частью процесса генерации.


Проворные инженеры уже давно говорят нам, что один из ключей к надежному результату — это обязать выпускников LLM формировать многоэтапный структурированный и логический мыслительный процесс. Формальное признание этого мы видим в подсказке.


«1. Прежде чем вызывать артефакт, подумайте над одним предложением в тегах <antthinking> о том, как он оценивается по критериям хорошего и плохого артефакта. Подумайте, будет ли контент работать нормально без артефакта. Если он достоин артефакта, в другом предложении определите, является ли это новым артефактом или обновлением существующего (чаще всего). Для обновлений повторно используйте предыдущий идентификатор.


Здесь мы обязываем нашу систему выполнить структурированный многоэтапный процесс для анализа задачи и результатов. Опять же, переходя к четкому определению подробного контента и намекая на систему поиска и извлечения артефактов.


«<antthinking>Создание скрипта Python для вычисления факториалов соответствует критериям хорошего артефакта. Это автономный фрагмент кода, который можно понять сам по себе и который, скорее всего, будет повторно использоваться или изменяться. Это новый разговор, поэтому ранее существовавших артефактов нет. Поэтому я создаю новый артефакт.</antthinking>


<antthinking>Этот запрос является прямой модификацией существующего артефакта калькулятора факториала. Это не новый артефакт, а обновление, делающее скрипт более надежным. Я буду повторно использовать идентификатор факториала-калькулятора, чтобы сохранить непрерывность и показать эволюцию нашего кода.</antthinking>


Здесь мы можем видеть реализацию логического мыслительного процесса для получения определенных результатов. Гарантируя, что наш алгоритм проходит одни и те же логические шаги, мы получаем зачатки интеллектуального и повторяемого процесса генерации.


Мы можем сопоставить эту логику с мыслительным процессом человека. Прежде всего, у нас есть логичный и рациональный подход к решению проблем. Мы дополняем это жесткими артефактами. Набор данных LLM — это мозг, а артефакты — это навыки и знания, позволяющие нам достичь определенного результата.


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


Это делает системные подсказки и инструкции невероятно ценными активами. Понимание и совершенствование «логического мышления» является ключевой частью процесса генерации.


Мы можем увидеть некоторые базовые реализации этого структурированного мышления в коде...

Идентификаторы и поиск

Поиск и извлечение артефактов — ключевая часть системной подсказки.


«<antartifactidentifier="factorial-script" type="application/vnd.ant.code" Language="python" title="Простой скрипт факториала Python"> def Factorial(n): if n == 0: вернуть 1 else : вернуть n * факториал(n - 1)


Так что же такое application/vnd.ant.code? Приложение достаточно простое, VND — поставщик, ANT — Anthropic (создатели Claude) и код; это понимание их архитектуры. Я ожидал бы какой-то таксономии и структурированных данных, в которых будут перечислены задачи, которые люди пытаются решить с помощью LLM.


  1. Задачи кодирования

  2. Презентации

  3. Документы

  4. Анализ

  5. Многое другое...


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

 <antartifact identifier="powerpoint-presentation" type="application/vnd.ant.presentation" purpose="business" title="Simple powerpoint presentation"> Slide 1: Title slide Slide 2: Introduction Slide 3: Problem statement Slide 4: Solution </antartifact>


Это почти наверняка не что иное, как производственный код, а интересная ментальная парадигма. Чтобы контролировать и структурировать подробный вывод, мы должны столкнуться с логическими и рациональными процессами категоризации и стандартизации ввода и вывода.


Я подозреваю, что это означает, что когда поступают входные данные, они запускают отдельные проверенные в боях алгоритмы, которые выполняют извлечение и категоризацию сущностей. Эти структурированные данные затем проходят через процесс поиска и извлечения активов. Где для текста мы используем векторные базы данных; для других определенных результатов мы теперь ввели концепцию артефактов. Например, задача React Code может выглядеть примерно так.


 "INPUT: Create a react component for a metrics dashboard", "ENTITY_EXTRACTION: Coding, React, Metrics Dashboard", "ENTITY_SEARCH: Retrieve code artifacts for Metrics Dashboard where type = React", "SYSTEM_PROMPT: create_system_prompt(artifact_id='metrics-dashboard-component', type='application/vnd.ant.code', language='react')"


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


Но, насколько мы видим, по своей сути это причудливая система поиска и поиска, основанная на собственном языке шаблонов.

Структура языка шаблонов

Шаблон рендеринга, который будет меняться в зависимости от входных переменных.


Я начал свою карьеру много лет назад в качестве Drupal-разработчика. Прочитав подсказку, мне бросилось в глаза слово TWIG. Twig — это язык шаблонов HTML, который обычно использовался для рендеринга шаблонов HTML из PHP. Клод почти наверняка будет использовать какой-то эквивалентный подход, который адаптирует ввод и контекст на основе структурированных данных (вероятно, извлеченных за пределами LLM).


Похоже, что Claude Sonnet 3.5 использует нечто подобное, и это вполне логично. Учитывая ввод текста в LLM, нам необходимо систематически генерировать блоки текста. Это динамические теги, которые объединяются для создания подсказки.


  1. <антартефакт></антартефакт>

  2. <artifacts_info><artifacts_info/>

  3. <пример></пример>

  4. <user_query></user_query>

  5. <example_docstring></example_docstring>

  6. <assistant_response></assistant_response>


Это будет использовать своего рода подход к вызову функций. Каждый тег имеет определенную цель. Затем это служит абстракцией, поскольку мы направляем нашу модель на поиск правильной категории и типа для каждой конкретной цели. Я думаю, что быстрое строительство происходит примерно так. Поступает массово спекулятивный псевдокод…


 function generate_reference() { context=artifact_type, artifact_id, task examples = search_examples_by_type('react', 'hooks', 'current_ids') return structured_data } function generate_system_instruction(structured_data) { <antartifact> <artifacts_info {{ attribute(version, '1.00') }}> <% artifact_introduction %> <% artifact_selection %> <% artifact_elimination %> <% artifact_usage %> <% artifact_instruction {{ type(code, 'data-code') }} {{ type(react, 'data-react') }} %> </ artifacts_info/> <example {{ for react_example in react_code_artifact }}>{react_example }</example> <example_docstring {{ for example_thought_process in curated_artifact_generation_example }}>{example_thought_process }<example_docstring /> <user_query>{sanitized_user_query}</user_query> <assistant_response>{sanitized_user_query}</assistant_response> </antartifact }


Итак, вот он, мыслительный процесс, разбитый на блоки. Извлечение объектов сопоставляется с расширенным поиском и извлечением. Строительные блоки логического мыслительного процесса. Базовые данные являются ключом к качеству результатов.

Заключение

Один маленький артефакт для Клода, гигантский скачок для ИИ.


Артефакты предназначены для структурированного вывода, такого как генерация кода, а векторный поиск - для тряпки. Это система поиска и извлечения структурированной информации.


Мы видим свидетельства структурированного и рационального мыслительного процесса в Клоде 3.5. Мы всегда ожидали, что это будет важно в генеративном искусственном интеллекте, но это формальное доказательство.


Я могу представить армии разработчиков и маркетологов, создающих библиотеки тщательно отобранных артефактов. Доступ к этой библиотеке осуществляется через задачи классификации, а затем поиска и извлечения. Но настоящий шаг вперед — это концепция настойчивости.


Работая с артефактами, мы получаем ориентиры, существующие за пределами эфемерного. Те, которые можно усовершенствовать и повторно использовать. У нас уже были мысли и подробный вывод. Теперь у нас есть воспоминания и опыт...

Система Клода 3.5

Системное приглашение полностью

L O A D I N G
. . . comments & more!

About Author

tyingshoelaces.com HackerNoon profile picture
tyingshoelaces.com@tyingshoelaces
If you have used the internet in the last 15 years then there is a good chance that you’ve bought, searched or browsed on software that I’ve helped to build. I’ve worked on official government websites in the UK, helped run Shopify’s checkout, scaled a unicorn and everything in between. I’ve created startups that have failed, I’ve created startups that have been successful and I’ve built interesting things both big and small.

БИРКИ

ЭТА СТАТЬЯ БЫЛА ПРЕДСТАВЛЕНА В...