# `ReqLLM.Providers.Meta`
[🔗](https://github.com/agentjido/req_llm/blob/main/lib/req_llm/providers/meta.ex#L1)

Meta Model API provider using the OpenAI-compatible Responses API.

Meta exposes Muse models at `https://api.meta.ai/v1`. This provider supports
text generation, streaming, reasoning effort, encrypted reasoning continuity,
tool calling, structured output, and prompt-cache retention controls through
ReqLLM's standard APIs.

Requests default to stateless operation with encrypted reasoning returned so
ReqLLM can preserve reasoning context across tool calls and conversation turns.

## Configuration

    MODEL_API_KEY=your-api-key

## Examples

    ReqLLM.generate_text("meta:muse-spark-1.1", "Hello!")

    ReqLLM.stream_text("meta:muse-spark-1.1", "Solve this carefully",
      reasoning_effort: :high,
      max_tokens: 1024
    )

    ReqLLM.generate_text("meta:muse-spark-1.1", "Summarize this conversation",
      provider_options: [prompt_cache_retention: "24h"]
    )

Meta's native Llama payload helpers used by Amazon Bedrock live in
`ReqLLM.Providers.Meta.Llama`.

# `attach`

Default implementation of attach/3.

Sets up Bearer token authentication and standard pipeline steps.

# `attach_stream`

Default implementation of attach_stream/4.

Builds complete streaming requests using OpenAI-compatible format.

# `base_url`

# `build_body`

Default implementation of build_body/1.

Builds request body using OpenAI-compatible format for chat and embedding operations.

# `decode_response`

Default implementation of decode_response/1.

Handles success/error responses with standard ReqLLM.Response creation.

# `decode_stream_event`

Default implementation of decode_stream_event/2.

Decodes SSE events using OpenAI-compatible format.

# `default_base_url`

# `default_env_key`

# `encode_body`

Default implementation of encode_body/1.

Encodes request body using OpenAI-compatible format for chat and embedding operations.

# `extract_usage`

> This function is deprecated. Use ReqLLM.Providers.Meta.Llama.extract_usage/1.

# `extract_usage`

Default implementation of extract_usage/2.

Extracts usage data from standard `usage` field in response body.

# `format_llama_prompt`

> This function is deprecated. Use ReqLLM.Providers.Meta.Llama.format_llama_prompt/1.

# `format_request`

> This function is deprecated. Use ReqLLM.Providers.Meta.Llama.format_request/2.

# `parse_response`

> This function is deprecated. Use ReqLLM.Providers.Meta.Llama.parse_response/2.

# `parse_stop_reason`

> This function is deprecated. Use ReqLLM.Providers.Meta.Llama.parse_stop_reason/1.

# `pre_validate_options`

# `prepare_request`

Default implementation of prepare_request/4.

Handles :chat, :object, and :embedding operations using OpenAI-compatible patterns.

# `provider_extended_generation_schema`

# `provider_id`

# `provider_schema`

# `supported_provider_options`

# `translate_options`

Default implementation of translate_options/3.

Pass-through implementation that returns options unchanged.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
