chore: migrate to v3 and adopt Doppler for secrets management #3

Open
kamil wants to merge 574 commits from v3-cleanup into main
Showing only changes of commit 5bc69ad9ce - Show all commits

View File

@@ -237,14 +237,18 @@ func (c *textGenHTTPClient) Generate(ctx context.Context, req TextRequest) (stri
if err := json.Unmarshal(wrapper.Result.Response, &text); err == nil {
return text, nil
}
// Fall back: array of objects with a "generated_text" field.
// Fall back: array of objects with a "generated_text" field
// (older CF AI models return [{"generated_text":"..."}]).
var arr []struct {
GeneratedText string `json:"generated_text"`
}
if err := json.Unmarshal(wrapper.Result.Response, &arr); err == nil && len(arr) > 0 {
if err := json.Unmarshal(wrapper.Result.Response, &arr); err == nil && len(arr) > 0 && arr[0].GeneratedText != "" {
return arr[0].GeneratedText, nil
}
return "", fmt.Errorf("cfai/text: model %s: unrecognised response shape: %s", req.Model, wrapper.Result.Response)
// Final fallback: model returned the result directly as a JSON value
// (e.g. Llama 4 Scout returns [{"number":1,"title":"..."},...] directly).
// Return the raw JSON bytes as a string so callers can parse it themselves.
return string(wrapper.Result.Response), nil
}
// Models returns all supported text generation model metadata.