Current section
Files
Jump to
Current section
Files
examples/translation.exs
# Translation Example - Using Generated Native Bindings
#
# Run with: mix run --no-start examples/translation.exs
require SnakeBridge
SnakeBridge.script do
IO.puts("DSPex Translation Example")
IO.puts("==========================\n")
{:ok, lm} = Dspy.LM.new("gemini/gemini-flash-lite-latest", [])
{:ok, _} = Dspy.configure(lm: lm)
{:ok, translator} = Dspy.PredictClass.new("text, target_language -> translation", [])
phrases = [
{"Hello, how are you?", "Spanish"},
{"The weather is beautiful today.", "French"},
{"I love programming in Elixir.", "Japanese"}
]
for {text, lang} <- phrases do
{:ok, result} = Dspy.PredictClass.forward(translator, text: text, target_language: lang)
{:ok, translation} = SnakeBridge.attr(result, "translation")
IO.puts("#{text}")
IO.puts(" -> [#{lang}] #{translation}\n")
end
IO.puts("Done!")
end