Разработка с Claude API

Запросы, потоковые ответы, tool use, структурированный вывод и стоимость.

92 уроков, первые 3 бесплатно. Полный доступ: 1490 руб.

Уроки курса

  1. Welcome to the course
  2. Overview of Claude models
  3. Accessing the API
  4. Getting an API key
  5. Making a request
  6. Multi-Turn conversations
  7. Chat exercise
  8. System prompts
  9. System prompts exercise
  10. Temperature
  11. Course satisfaction survey
  12. Response streaming
  13. Structured data
  14. Structured data exercise
  15. Quiz on accessing Claude with the API
  16. Prompt evaluation
  17. A typical eval workflow
  18. Generating test datasets
  19. Running the eval
  20. Model based grading
  21. Code based grading
  22. Exercise on prompt evals
  23. Quiz on prompt evaluation
  24. Prompt engineering
  25. Being clear and direct
  26. Being specific
  27. Structure with XML tags
  28. Providing examples
  29. Exercise on prompting
  30. Quiz on prompt engineering techniques
  31. Introducing tool use
  32. Project overview
  33. Tool functions
  34. Tool schemas
  35. Handling message blocks
  36. Sending tool results
  37. Multi-turn conversations with tools
  38. Implementing multiple turns
  39. Using multiple tools
  40. Fine grained tool calling
  41. The text edit tool
  42. The web search tool
  43. Quiz on tool use with Claude
  44. Introducing Retrieval Augmented Generation
  45. Text chunking strategies
  46. Text embeddings
  47. The full RAG flow
  48. Implementing the RAG flow
  49. BM25 lexical search
  50. A Multi-Index RAG pipeline
  51. Extended thinking
  52. Image support
  53. PDF support
  54. Citations
  55. Prompt caching
  56. Rules of prompt caching
  57. Prompt caching in action
  58. Code execution and the Files API
  59. Quiz on features of Claude
  60. Introducing MCP
  61. MCP clients
  62. Project setup
  63. Defining tools with MCP
  64. The server inspector
  65. Implementing a client
  66. Defining resources
  67. Accessing resources
  68. Defining prompts
  69. Prompts in the client
  70. MCP review
  71. Quiz on Model Context Protocol
  72. Anthropic apps
  73. Claude Code setup
  74. Claude Code in action
  75. Enhancements with MCP servers
  76. Agents and workflows
  77. Parallelization workflows
  78. Chaining workflows
  79. Routing workflows
  80. Agents and tools
  81. Environment inspection
  82. Workflows vs agents
  83. Quiz on Agents and Workflows
  84. Final Assessment
  85. Course Wrap Up
  86. What You'll Learn
  87. What You'll Learn
  88. What You'll Learn
  89. What You'll Learn
  90. What You'll Learn
  91. What You'll Learn
  92. What You'll Learn

Инструмент "Текстовый Редактор" Claude: Расширяя Возможности AI

В мире больших языковых моделей (LLM) Claude от Anthropic выделяется не только своими разговорными способностями, но и уникальными инструментами, которые значительно расширяют его функциональность. Один из таких встроенных инструментов, не требующих создания с нуля, — это "Текстовый Редактор" (Text Editor Tool). Этот мощный инструмент наделяет Claude способностью взаимодействовать с файлами и директориями, подобно тому, как это делает разработчик в стандартном текстовом редакторе или интегрированной среде разработки (IDE).

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

Что может "Текстовый Редактор" Claude?

Инструмент "Текстовый Редактор" предоставляет Claude обширный набор возможностей для манипулирования файлами, превращая его в настоящего цифрового помощника-инженера:

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

Особенности реализации: Схема и Исполнение

Здесь кроется ключевой нюанс, который важно понять: хотя схема инструмента "Текстовый Редактор" встроена в Claude, вы все равно должны предоставить фактическую реализацию его функций. Это означает, что Claude "знает", как запросить операцию с файлом (например, "открой файл", "замени текст"), но именно вы должны написать код, который фактически выполнит эти операции в вашей среде.

Представьте это так: Claude — это архитектор, который проектирует здание и говорит: "Мне нужна дверь здесь, а окно там". Но строитель (ваш код) — это тот, кто фактически устанавливает дверь и окно. Когда вы используете другие инструменты с Claude, вы обычно пишете как JSON-схему (описание инструмента), так и реализацию функции. В случае с "Текстовым Редактором" Claude уже предоставляет знание схемы, но вы должны написать функции, которые будут обрабатывать запросы Claude на создание файлов, чтение директорий, замену текста и так далее.

Несмотря на то, что основная схема встроена в Claude, вам все же необходимо включить небольшой "заглушечный" фрагмент схемы (schema stub) при отправке запросов. Точная схема зависит от используемой вами модели Claude:

def get_text_edit_schema(model):
    if model.startswith("claude-3-7-sonnet"):
        return {
            "type": "text_editor_20250124",
            "name": "str_replace_editor",
        }
    elif model.startswith("claude-3-5-sonnet"):
        return {
            "type": "text_editor_20241022",
            "name": "str_replace_editor",
        }

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

Практические примеры использования

Давайте рассмотрим, как инструмент "Текстовый Редактор" работает на практике. Когда вы просите Claude взаимодействовать с файлами, он будет использовать этот инструмент для чтения, модификации и создания файлов по мере необходимости.

Например, если вы попросите Claude: "Открой файл ./main.py и резюмируй его содержимое", Claude выполнит следующие шаги:

  1. Использует инструмент "Текстовый Редактор" для просмотра файла.
  2. Прочитает его содержимое через вашу реализацию функции чтения.
  3. Предоставит вам резюме на основе прочитанного.

Вы можете пойти дальше, попросив Claude модифицировать файлы. Например: "Открой файл ./main.py и напиши функцию для вычисления числа Pi с точностью до 5 знаков после запятой. Затем создай файл ./test.py для тестирования этой реализации." В этом случае Claude:

  1. Просмотрит существующий файл main.py.
  2. Заменит его содержимое новой реализацией, включающей функцию вычисления Pi.
  3. Создаст новый файл test.py с соответствующими модульными тестами.

Все эти операции будут выполнены через функции, которые вы предоставили для инструмента "Текстовый Редактор", обеспечивая полный контроль над файловой системой.

Почему стоит использовать "Текстовый Редактор"?

Возможно, вы зададитесь вопросом, зачем нужен этот инструмент, если современные редакторы кода уже имеют встроенных AI-помощников. Инструмент "Текстовый Редактор" становится бесценным в сценариях, где:

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