mindee 4.8.0 → 4.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6bbe7fd9450d6e87f07b3b96c636ef8715200370503eb97d65db46225b6ccf8e
4
- data.tar.gz: 36b67f8ca703982d40048e4d7e9a3b20e4204c7a36386028b3bd11da79560a20
3
+ metadata.gz: b3307b74c76a019147939c9d201adcf2d4b2557a9b773475f6b92407ee18f9bf
4
+ data.tar.gz: 4d5f9204fc983bf1e108d1feb04bb3abded3f2d4dad62eba86d714a608af4d48
5
5
  SHA512:
6
- metadata.gz: '08dd6e3e40ea73f874647ab537f2539342aca107bb1d324c04fa8b8de1fa803f5893117bcaf0e840dd6210b55e6e7c163897bb6cba6a36389b44daeab6a886e2'
7
- data.tar.gz: 6028ec9f0d38e9e7840c33c98a517d8db02aef34058b8ae517c560cdc0b88524a0e2ab4a472dfe4e1f12ef027fce5bd2153cebd628e2c66f29ac3c8733c1cec3
6
+ metadata.gz: 8e712d0f2cdf6926c50513c0bd499beca98de1774067d637a0aeb915071b18d5004ba214d07f6ebb861eb8ac76e56ad5c13e960f209363bcd6ff31459cfdcacb
7
+ data.tar.gz: f9b117e1087b5b89cc3d957fb150c243b2409a0fb40483df6f4279761a4cf1384905c375a973cb3d3c9d95ca7abdca49d6cc8613738ae5ae6a5374464b26e00f
data/CHANGELOG.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # Mindee Ruby API Library Changelog
2
2
 
3
+ ## v4.9.0 - 2025-12-02
4
+ ### Changes
5
+ * :sparkles: add support for text_context parameter
6
+
7
+
3
8
  ## v4.8.0 - 2025-11-18
4
9
  ### Changes
5
10
  * :sparkles: add support for better errors
@@ -111,8 +111,25 @@ module Mindee
111
111
  poll("#{@settings.base_url}/inferences/#{queue_id}")
112
112
  end
113
113
 
114
+ # Handle parameters for the enqueue form
115
+ # @param form_data [Array] Array of form fields
116
+ # @param params [Input::InferenceParameters] Inference options.
117
+ def enqueue_form_options(form_data, params)
118
+ # deal with optional features
119
+ form_data.push(['rag', params.rag.to_s]) unless params.rag.nil?
120
+ form_data.push(['raw_text', params.raw_text.to_s]) unless params.raw_text.nil?
121
+ form_data.push(['polygon', params.polygon.to_s]) unless params.polygon.nil?
122
+ form_data.push(['confidence', params.confidence.to_s]) unless params.confidence.nil?
123
+ form_data.push ['file_alias', params.file_alias] if params.file_alias
124
+ form_data.push ['text_context', params.text_context] if params.text_context
125
+ unless params.webhook_ids.nil? || params.webhook_ids.empty?
126
+ form_data.push ['webhook_ids', params.webhook_ids.join(',')]
127
+ end
128
+ form_data
129
+ end
130
+
114
131
  # @param input_source [Mindee::Input::Source::LocalInputSource, Mindee::Input::Source::URLInputSource]
115
- # @param params [Input::InferenceParameters] Parse options.
132
+ # @param params [Input::InferenceParameters] Inference options.
116
133
  # @return [Net::HTTPResponse, nil]
117
134
  def enqueue(input_source, params)
118
135
  uri = URI("#{@settings.base_url}/inferences/enqueue")
@@ -125,16 +142,9 @@ module Mindee
125
142
  end
126
143
  form_data.push(['model_id', params.model_id])
127
144
 
128
- # deal with optional features
129
- form_data.push(['rag', params.rag.to_s]) unless params.rag.nil?
130
- form_data.push(['raw_text', params.raw_text.to_s]) unless params.raw_text.nil?
131
- form_data.push(['polygon', params.polygon.to_s]) unless params.polygon.nil?
132
- form_data.push(['confidence', params.confidence.to_s]) unless params.confidence.nil?
145
+ # deal with other parameters
146
+ form_data = enqueue_form_options(form_data, params)
133
147
 
134
- form_data.push ['file_alias', params.file_alias] if params.file_alias
135
- unless params.webhook_ids.nil? || params.webhook_ids.empty?
136
- form_data.push ['webhook_ids', params.webhook_ids.join(',')]
137
- end
138
148
  headers = {
139
149
  'Authorization' => @settings.api_key,
140
150
  'User-Agent' => @settings.user_agent,
@@ -25,6 +25,10 @@ module Mindee
25
25
  # @return [String, nil] Optional alias for the file.
26
26
  attr_reader :file_alias
27
27
 
28
+ # @return [String, nil] Additional text context used by the model during inference.
29
+ # Not recommended, for specific use only.
30
+ attr_reader :text_context
31
+
28
32
  # @return [Array<String>, nil] Optional list of Webhooks IDs to propagate the API response to.
29
33
  attr_reader :webhook_ids
30
34
 
@@ -52,6 +56,7 @@ module Mindee
52
56
  confidence: nil,
53
57
  file_alias: nil,
54
58
  webhook_ids: nil,
59
+ text_context: nil,
55
60
  polling_options: nil,
56
61
  close_file: true
57
62
  )
@@ -64,6 +69,7 @@ module Mindee
64
69
  @confidence = confidence
65
70
  @file_alias = file_alias
66
71
  @webhook_ids = webhook_ids || []
72
+ @text_context = text_context
67
73
  @polling_options = get_clean_polling_options(polling_options)
68
74
  @close_file = close_file.nil? || close_file
69
75
  # rubocop:enable Metrics/ParameterLists
@@ -13,6 +13,8 @@ module Mindee
13
13
  attr_reader :confidence
14
14
  # @return [Boolean] Whether the Retrieval-Augmented Generation feature was activated.
15
15
  attr_reader :rag
16
+ # @return [Boolean] Whether the text context feature was activated.
17
+ attr_reader :text_context
16
18
 
17
19
  # @param server_response [Hash] Raw JSON parsed into a Hash.
18
20
  def initialize(server_response)
@@ -20,6 +22,7 @@ module Mindee
20
22
  @polygon = server_response['polygon']
21
23
  @confidence = server_response['confidence']
22
24
  @rag = server_response['rag']
25
+ @text_context = server_response['text_context']
23
26
  end
24
27
 
25
28
  # String representation.
@@ -3,7 +3,7 @@
3
3
  # Mindee
4
4
  module Mindee
5
5
  # Current version.
6
- VERSION = '4.8.0'
6
+ VERSION = '4.9.0'
7
7
 
8
8
  # Finds and return the current platform.
9
9
  # @return [Symbol, Hash[String | Symbol, Regexp], Nil?]
@@ -13,6 +13,10 @@ module Mindee
13
13
  def inference_job_req_get: (String) -> Net::HTTPResponse
14
14
  def inference_result_req_get: (String) -> Net::HTTPResponse
15
15
  def enqueue: (Input::Source::LocalInputSource | Input::Source::URLInputSource, Input::InferenceParameters) -> Net::HTTPResponse?
16
+
17
+ private
18
+
19
+ def enqueue_form_options: (Array[untyped], Input::InferenceParameters) -> Array[untyped]
16
20
  end
17
21
  end
18
22
  end
@@ -10,6 +10,7 @@ module Mindee
10
10
  attr_reader polygon: bool?
11
11
  attr_reader rag: bool?
12
12
  attr_reader raw_text: bool?
13
+ attr_reader text_context: String?
13
14
  attr_reader webhook_ids: Array[String]?
14
15
 
15
16
  def initialize: (
@@ -19,6 +20,7 @@ module Mindee
19
20
  ?polygon: bool?,
20
21
  ?confidence: bool?,
21
22
  ?file_alias: String?,
23
+ ?text_context: String?,
22
24
  ?webhook_ids: Array[String]?,
23
25
  ?polling_options: Hash[Symbol | String, untyped] | PollingOptions?,
24
26
  ?close_file: bool?
@@ -3,7 +3,7 @@ module Mindee
3
3
  module Input
4
4
  class LocalResponse
5
5
  def file: -> StringIO
6
- def initialize: (File | IO | StringIO | String | Pathname) -> void
6
+ def initialize: (File | IO | StringIO | String | Pathname | Tempfile) -> void
7
7
  def as_hash: -> Hash[String | Symbol, untyped]
8
8
  def self.process_secret_key: (String) -> String
9
9
  def get_hmac_signature: (String) -> String
@@ -6,6 +6,7 @@ module Mindee
6
6
  attr_reader polygon: bool
7
7
  attr_reader rag: bool
8
8
  attr_reader raw_text: bool
9
+ attr_reader text_context: bool
9
10
 
10
11
  def initialize: (Hash[String | Symbol, untyped]) -> void
11
12
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mindee
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.8.0
4
+ version: 4.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mindee, SA
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-11-18 00:00:00.000000000 Z
11
+ date: 2025-12-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: base64