К основному содержанию
скилл CX Codex

dspy-adapters-multimodal — скилл для Claude Code

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

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add OmidZamani/dspy-skills --skill dspy-adapters-multimodal -a claude-code
Открыть на GitHub

Что делает dspy-adapters-multimodal

Скилл объясняет, как выбирать адаптер DSPy под формат ответа и возможности языковой модели. ChatAdapter подходит для обычного текстового взаимодействия, JSONAdapter помогает получать структурированные данные и использовать нативный вызов функций, а XMLAdapter организует поля через XML-разметку. Для извлечения данных в отдельном проходе предусмотрен TwoStepAdapter.

В примерах показаны глобальная настройка через dspy.configure() и локальное переключение адаптера с помощью dspy.context(). Скилл также разбирает типизированные входы dspy.Image, dspy.Audio и dspy.File: с их помощью модель получает изображение, аудиозапись или документ. Например, dspy.Image(...) принимает локальный путь, HTTP URL, байты или изображение PIL.

Поведение зависит от выбранной модели. Если языковая модель не поддерживает нативный вызов функций, DSPy переключается на ручной разбор. Перед развёртыванием нужно проверить поддержку нужного типа медиа конкретным провайдером; устаревшие методы Image.from_file() и Image.from_url() заменены прямым вызовом dspy.Image(...).

Какие задачи решает

  • Выбрать адаптер DSPy для JSON-ответов
  • Настроить XML-разметку полей предсказания
  • Передать изображение в запрос модели
  • Получить сводку аудиозаписи или PDF
  • Обработать вызов функций при отсутствии нативной поддержки

Примеры запросов агенту

  • Настрой JSONAdapter для получения структурированного ответа от модели.
  • Покажи, как передать ./diagram.png в dspy.Image(...) и получить описание изображения.
  • Составь пример с dspy.Audio.from_file("./meeting.wav") для создания краткой сводки встречи.

Как установить dspy-adapters-multimodal

1Через Skills CLI (Vercel)

npx skills add OmidZamani/dspy-skills --skill dspy-adapters-multimodal -a claude-code

2Вручную: положить файлы

~/.claude/skills/dspy-adapters-multimodal/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/dspy-adapters-multimodal/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о dspy-adapters-multimodal

Как установить dspy-adapters-multimodal в Claude Code?

Выполни npx skills add OmidZamani/dspy-skills --skill dspy-adapters-multimodal -a claude-code. Файл скилла будет доступен по пути ~/.claude/skills/dspy-adapters-multimodal/SKILL.md.

Что делает dspy-adapters-multimodal?

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

Какие адаптеры DSPy разбирает скилл?

Он рассматривает ChatAdapter, JSONAdapter, XMLAdapter и TwoStepAdapter. Выбор зависит от нужного формата и поведения модели; поддержку нативного вызова функций и медиа нужно проверять на целевой модели.

Исходный текст

SKILL.md · MIT
---
name: dspy-adapters-multimodal
version: "1.0.0"
dspy-compatibility: "3.2.1"
tags: ["multimodal"]
requires-extras: []
description: Use for DSPy adapter selection, JSONAdapter, XMLAdapter, ChatAdapter, native function calling, structured outputs, and multimodal inputs like dspy.Image or dspy.Audio.
allowed-tools:
  - Read
  - Write
  - Glob
  - Grep
---

# DSPy Adapters and Multimodal I/O

## Goal

Choose an adapter deliberately and model image, audio, and file inputs with DSPy's typed primitives.

## Adapter Selection

| Adapter | Use it for |
|---------|------------|
| `dspy.ChatAdapter()` | Default, human-readable field markers, broad model compatibility |
| `dspy.JSONAdapter()` | Structured JSON output and native function calling where supported |
| `dspy.XMLAdapter()` | XML-tagged fields when XML is easier for the target LM to follow |
| `dspy.TwoStepAdapter()` | A separate extraction pass when parsing needs extra help |

Configure globally or for a limited scope:

```python
import dspy

dspy.configure(
    lm=dspy.LM("openai/gpt-4o-mini"),
    adapter=dspy.JSONAdapter(),
)

with dspy.context(adapter=dspy.XMLAdapter()):
    result = dspy.Predict("question -> answer")(question="What is DSPy?")
```

## Native Function Calling

`JSONAdapter` enables native function calling by default. `ChatAdapter` keeps text parsing by default. Override either behavior explicitly:

```python
chat_native = dspy.ChatAdapter(use_native_function_calling=True)
json_manual = dspy.JSONAdapter(use_native_function_calling=False)
```

DSPy falls back to manual parsing when the configured LM does not support native function calling.

## Image Inputs

```python
class DescribeImage(dspy.Signature):
    image: dspy.Image = dspy.InputField()
    description: str = dspy.OutputField()

describe = dspy.Predict(DescribeImage)
result = describe(image=dspy.Image("./diagram.png"))
```

Pass a local path, HTTP URL, bytes, PIL image, or existing data URI directly to `dspy.Image(...)`.

## Audio and File Inputs

```python
class SummarizeAudio(dspy.Signature):
    audio: dspy.Audio = dspy.InputField()
    summary: str = dspy.OutputField()

audio = dspy.Audio.from_file("./meeting.wav")
summary = dspy.Predict(SummarizeAudio)(audio=audio)
```

```python
class SummarizeFile(dspy.Signature):
    file: dspy.File = dspy.InputField()
    summary: str = dspy.OutputField()

document = dspy.File.from_path("./research.pdf")
summary = dspy.Predict(SummarizeFile)(file=document)
```

Provider capabilities vary. Verify that the selected model accepts the media type before deployment.

## Best Practices

1. Start with `ChatAdapter`; switch only for a measured reason.
2. Use typed signatures for structured output.
3. Test adapter behavior against the exact production model.
4. Avoid deprecated `Image.from_file()` and `Image.from_url()` helpers; call `dspy.Image(...)`.
5. Keep local file handling and uploaded file IDs within provider policy.

## Related Skills

- Design signatures: [dspy-signature-designer](../dspy-signature-designer/SKILL.md)
- Build tool agents: [dspy-react-agent-builder](../dspy-react-agent-builder/SKILL.md)

## Official Documentation

- **Adapters guide**: https://dspy.ai/learn/programming/adapters/
- **Tools guide**: https://dspy.ai/learn/programming/tools/
- **XMLAdapter API**: https://dspy.ai/api/adapters/XMLAdapter/
- **Image API**: https://dspy.ai/api/primitives/Image/
- **Audio API**: https://dspy.ai/api/primitives/Audio/

© OmidZamani · MIT · OmidZamani/dspy-skills

Похожие скиллы

Все скиллы по теме «ИИ и ML» →
skill-creator официальный anthropics Помогает создать новый скилл, доработать существующий и проверить результат через тестовые промпты и оценки. 414 180установок writing-for-agents Matt Pocock Помогает писать скиллы и документы с инструкциями для агентов. Пригодится при правках AGENTS.md, CLAUDE.md и связанных справочных файлов. 466 719установок media-use heygen-com Находит и генерирует ассеты для видео в HyperFrames — музыку, дикторский голос, аватары и эффекты. Сохраняет всё локально в assets. CX Codex +1 1 100 000установок mcp-builder официальный anthropics Скилл проводит через создание MCP-сервера на TypeScript или Python: от изучения протокола до тестов и оценки качества. 130 949установок subagent-driven-development Jesse Vincent Скилл выполняет план через отдельных субагентов для каждой задачи и проверяет результат после каждого шага. Подходит для независимых задач в одной сессии. CX Codex 237 746установок orchestration stablyai Координирует воркеров Orca через DAG задач, циклы супервизора и цепочки сообщений. Пригодится для распределения сложной работы между агентами. CX Codex +1 350 300установок

Из того же набора23

dspy-finetune-bootstrap Дистиллирует работающую DSPy-программу в веса меньшей модели через BootstrapFinetune, чтобы снизить стоимость инференса и ускорить ответы. CX Codex +1 ★ 124звёзд репо dspy-evaluation-suite Скилл настраивает систематическую оценку программ DSPy на выборке примеров с замером метрик точности и параллельным запуском тестов. CX Codex +1 ★ 124звёзд репо dspy-embedding-retrieval Скилл настраивает семантический поиск по текстовому корпусу через DSPy, эмбеддинги и FAISS. Нужен для retrieval и RAG. CX Codex +1 ★ 124звёзд репо dspy-debugging-observability Скилл для отладки и мониторинга программ на DSPy: история вызовов, трассировка через MLflow, свои колбэки для учёта цены и ошибок. CX Codex +1 ★ 124звёзд репо dspy-custom-module-design Помогает проектировать кастомные модули DSPy с наследованием от dspy.Module, сохранением состояния, сериализацией и валидацией ответов. CX Codex +1 ★ 124звёзд репо dspy-bootstrap-fewshot Скилл помогает настроить BootstrapFewShot: учительская модель создаёт демонстрации для программы DSPy. Пригодится, когда есть размеченные примеры и вручную выбирать их неудобно. CX Codex +1 ★ 124звёзд репо dspy-better-together Скилл помогает собрать цепочку из промпт- и весовых оптимизаторов DSPy, сравнить промежуточные программы и вернуть лучшую. CX Codex +1 ★ 124звёзд репо dspy-advanced-module-composition Собирает программы на DSPy через ансамбли, голосование, последовательные конвейеры и MultiChainComparison. Пригодится при настройке сложных пайплайнов рассуждений. CX Codex +1 ★ 124звёзд репо

Спонсоры проекта

Компании, которые помогают держать аналитику открытой