Choose better results and keep context You can keep chat context, sample several candidates, select one result, cache responses, and observe steps. Add each option only when your feature needs that control. go academy academy/topics/gen-memory-sampling-hooks website/content-src/academy/course.mjs academy Choose better results and keep context
Unit 3 · Build a reliable AI-powered feature

Choose better results and keep context

You can keep chat context, sample several candidates, select one result, cache responses, and observe steps. Add each option only when your feature needs that control.

9 focused minutesNot started
Unit example (nearest native match)

See the idea in context

answer := axllm.NewAx("question:string -> answer:string", nil)
  1. Carry relevant memory

    mem supplies conversation context owned by your application.

  2. Request candidates

    sampleCount asks for three possible results instead of one.

  3. Select with a rule

    resultPicker turns extra samples into a deliberate quality choice.

Run itIn your own project
go get github.com/ax-llm/ax/packages/go

import axllm "github.com/ax-llm/ax/packages/go"

client := axllm.NewAI("openai", map[string]axllm.Value{"apiKey": os.Getenv("OPENAI_API_KEY")})
classify := axllm.NewAx("review:string -> sentiment:class \"positive, negative, neutral\"", nil)

Set OPENAI_APIKEY in your environment before running provider-backed code.

In the ax repo

From a clone of the ax repo:

npm run example -- go src/examples/go/generation/basic_generation.go
Active practice

Show that you can use it

Answer 2 in a row to learn this · attempt 1
Keep exploring

Source-backed follow-up