ash-project / ash-project/ash_ai

BAMLAdapter for formatting Ash Resources in prompt (instead of json_schema)

Open
#110 0 comments 1 reaction 0 assignees View on GitHub
enhancement
Dominant language
Elixir
Stars
189
Forks
89
Avg merge
8h 32m
Merged PRs (30d)
3

Description

### Code of Conduct

- [x] I agree to follow this project's Code of Conduct

### AI Policy

- [x] I agree to follow this project's AI Policy, or I agree that AI was not used while creating this issue.

### Is your feature request related to a problem? Please describe.

recently, [dspy merged a BAML adapter](https://github.com/stanfordnlp/dspy/pull/8614) which is a different way of formatting the classes in python when sending them in prompt.

Current default way to do that is json_schema. Which becomes too verbose when json schema is nested.

BAML gives 5% improvement over JsonSchema approach as shown in the PR.

Image

### Describe the solution you'd like

Todo: Implement BAMLAdapter as opt-in to replace json_schema formatting of ash resources.

### Describe alternatives you've considered

_No response_

### Additional context

_No response_

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the existing json_schema formatting path in ash_ai and the linked DSPy BAML adapter PR. Determine how an opt-in BAMLAdapter should replace that formatting for Ash resources, then verify that nested resources produce the intended prompt representation without changing the default behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
elixir
Domain
ai, backend-api-design
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.