App öffnen
Moonborn — Developers

Elixir

Das offizielle Elixir-SDK. Idiomatische supervised Prozesse, Tesla-backed HTTP, versendet innerhalb einer Woche jedes API-Releases.

Das Elixir-SDK ist moonborn auf Hex. Aus der kanonischen OpenAPI- Spec generiert; idiomatisches Elixir — supervisierbare Prozesse, Tesla-backed HTTP, pattern-matchable Result-Tuples.

Installieren

# mix.exs
def deps do
  [{:moonborn, "~> 1.0"}]
end
mix deps.get

Erster Call

{:ok, client} = Moonborn.client(api_key: System.fetch_env!("MOONBORN_API_KEY"))
 
{:ok, persona} = Moonborn.Personas.create_persona(client,
  intent: "Ein 34-jähriger Gründer aus Istanbul. Brillant, aber rastlos.",
  workspace_id: "ws_..."
)
 
IO.inspect({persona.id, persona.status})

Chat

{:ok, session} = Moonborn.Chat.create_session(client, persona_id: persona.id)
{:ok, reply} = Moonborn.Chat.send_message(client,
  session_id: session.id,
  content: "Was treibt dich an?"
)

Streaming

Moonborn.Chat.stream_message(client, session_id: session.id, content: "Erzähl mir eine stille Wahrheit.")
|> Enum.each(fn
  {:token, delta} -> IO.write(delta)
  {:completed, %{drift_score: ds}} -> IO.puts("\ndrift: #{ds}")
end)

Error-Handling

case Moonborn.Personas.get_persona(client, id: "persona_...") do
  {:ok, persona} -> persona
  {:error, %Moonborn.ApiError{code: "rate_limited", retry_after: ms}} ->
    Process.sleep(ms)
    # retry
end

Tarif

Jeder Tier.

Weiter