Skip to content

Commit 7567d71

Browse files
authored
update generate text and object API for new mastra (#27)
## 🚪 Why? meet new API
1 parent 8225532 commit 7567d71

File tree

6 files changed

+10
-18
lines changed

6 files changed

+10
-18
lines changed

Gemfile.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
PATH
22
remote: .
33
specs:
4-
ai (0.4.2)
4+
ai (0.5.0)
55
actionpack (>= 7.1.3)
66
activesupport (>= 7.1.3)
77
json_schemer (~> 2.4.0)

lib/ai/types/generate_object_result.rb

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,23 +6,15 @@ class GenerateObjectResult < T::Struct
66

77
Elem = type_member
88

9-
# The object that was generated
109
const :object, Elem
11-
# Why the language-model call finished (e.g. :stop, :length…)
1210
const :finish_reason, Ai::FinishReason
13-
# Usage format
1411
const :usage, T.nilable(Usage), default: nil
15-
# Provider warnings (e.g. unsupported settings)
12+
const :total_usage, T.nilable(Usage), default: nil
1613
const :warnings, T.nilable(T::Array[CallWarning])
17-
# Raw request metadata (body, headers, etc.)
1814
const :request, LanguageModelRequestMetadata
19-
# Raw response metadata (status, headers, body, messages, …)
2015
const :response, ResponseMetadata
21-
# Log-probs if the provider returned them
2216
const :logprobs, T.nilable(LogProbs)
23-
# Structured, provider-specific extras
2417
const :provider_metadata, T.nilable(ProviderMetadata)
25-
# Back-compat alias (deprecated)
26-
const :experimental_provider_metadata, T.nilable(ProviderMetadata)
18+
const :trace_id, T.nilable(String)
2719
end
2820
end

lib/ai/types/generate_text_result.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,13 @@ class GenerateTextResult < T::Struct
1313
const :tool_results, ToolResultArray
1414
const :finish_reason, FinishReason
1515
const :usage, T.nilable(Usage), default: nil
16+
const :total_usage, T.nilable(Usage), default: nil
1617
const :warnings, T.nilable(T::Array[CallWarning])
1718
const :steps, T::Array[StepResult]
1819
const :request, LanguageModelRequestMetadata
1920
const :response, ResponseMetadata
2021
const :logprobs, T.nilable(LogProbs)
2122
const :provider_metadata, T.nilable(ProviderMetadata)
22-
const :experimental_provider_metadata, T.nilable(ProviderMetadata)
23+
const :trace_id, T.nilable(String)
2324
end
2425
end

lib/ai/types/step_result.rb

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,9 @@
33
module Ai
44
class StepResult < T::Struct
55
const :text, String
6-
const :reasoning, T.nilable(String)
7-
const :reasoning_details, T::Array[ReasoningDetail]
6+
const :content, T::Array[T.anything]
7+
const :reasoning_text, T.nilable(String)
8+
const :reasoning, T::Array[ReasoningDetail]
89
const :files, T::Array[GeneratedFile]
910
const :sources, T::Array[Source]
1011
const :tool_calls, ToolCallArray
@@ -16,8 +17,6 @@ class StepResult < T::Struct
1617
const :request, LanguageModelRequestMetadata
1718
const :response, ResponseMetadata
1819
const :provider_metadata, T.nilable(ProviderMetadata)
19-
const :experimental_provider_metadata, T.nilable(ProviderMetadata)
2020
const :step_type, String # 'initial' | 'continue' | 'tool-result'
21-
const :is_continued, T::Boolean
2221
end
2322
end

lib/ai/version.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22
# frozen_string_literal: true
33

44
module Ai
5-
VERSION = '0.4.2'
5+
VERSION = '0.5.0'
66
end

spec/lib/ai/agent_spec.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -205,7 +205,7 @@
205205
expect(result).to respond_to(:response)
206206
expect(result).to respond_to(:logprobs)
207207
expect(result).to respond_to(:provider_metadata)
208-
expect(result).to respond_to(:experimental_provider_metadata)
208+
expect(result).to respond_to(:trace_id)
209209

210210
expect(result.object).to be_a(schema)
211211
end

0 commit comments

Comments
 (0)