abliteration 0.1.0 → 0.1.1

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: 125b5d1033cb3b5e2d0c6da086a00dfae95d47033f9856c22bc5408e17d3061a
4
- data.tar.gz: 313918f4f4d3961d98d544923972e21723391be8d7dde10d9c0b188d8fa170fc
3
+ metadata.gz: 930048af7914198ecdd2ad300cbd5827447316fc3a112bbe0fc5844c2e9ddd9a
4
+ data.tar.gz: bd3f3ef798683cce29bf1f03cff941113c52de594a151d1bed8a7b36fa8f4d67
5
5
  SHA512:
6
- metadata.gz: 2430b73a8e7fd183ddfc2de02670bb09b7d04e1e3740894bf0870add4124fe83a2ed6ef400c3113efa087e3f5cf3dc7c9b3f5f3c01db62719c4a15677cd04b6c
7
- data.tar.gz: 16b2290403b2231e95d0fbe322ebf3c884864548286a7b1c3d2fc2c9485bd82e2fa7e59ea4ba7a589fff5768d7e871b1a477e007a4b0a2e42b6e9439cb0272e6
6
+ metadata.gz: '0773808bc6776876aa64b5823ecce1ba35c76fae49e3634691296ec30efae25f09b44a38720c2ffbce094d3457db696fa8abf54a2dca29e1ef47525e4de320f4'
7
+ data.tar.gz: a2e281a0f34b542d64adadbceb16c80f8d3e525864430fe6bc26d29dc1ac6fd46f3c69a2db784cccd185685465151e3cfe52bea9ccaf4535978924cbadf731dc
data/README.md CHANGED
@@ -1,65 +1,143 @@
1
- # abliteration (Ruby)
1
+ # abliteration
2
2
 
3
- Auto-generated Ruby client for the [abliteration.org](https://abliteration.org) catalog API. Covers every route on `/api/v1` with typed models.
3
+ Abliteration - the Ruby gem for the abliteration.org Public API
4
4
 
5
- ## Install
5
+ Read access to the abliteration.org catalog: models and their method classification, alignment datasets and their passports, the M-code taxonomy, the four flagship indices and the curated field timeline.
6
6
 
7
- ```bash
8
- gem install abliteration
7
+ Every call is authenticated with a bearer key and metered in credits against the same wallet the Research Agent spends from. There is no free tier for machine traffic and no separate billing.
8
+
9
+ Responses report `cost` and `credits_remaining` on every success. While `metering` reads `preview`, the cost shown is what the call will bill once metering is enabled and nothing is actually deducted; when it reads `billed`, it was.
10
+
11
+ This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
12
+
13
+ - API version: 1.0.0
14
+ - Package version: 0.1.0
15
+ - Generator version: 7.25.0
16
+ - Build package: org.openapitools.codegen.languages.RubyClientCodegen
17
+ For more information, please visit [https://abliteration.org/api](https://abliteration.org/api)
18
+
19
+ ## Installation
20
+
21
+ ### Build a gem
22
+
23
+ To build the Ruby code into a gem:
24
+
25
+ ```shell
26
+ gem build abliteration.gemspec
9
27
  ```
10
28
 
11
- Or in your `Gemfile`:
29
+ Then either install the gem locally:
12
30
 
13
- ```ruby
14
- gem 'abliteration', '~> 0.1'
31
+ ```shell
32
+ gem install ./abliteration-0.1.0.gem
15
33
  ```
16
34
 
17
- ## Get a key
35
+ (for development, run `gem install --dev ./abliteration-0.1.0.gem` to install the development dependencies)
18
36
 
19
- Generate a Bearer token at <https://abliteration.org/shop/account#api-keys>. Then either export it or configure the client explicitly.
37
+ or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).
20
38
 
21
- ```bash
22
- export ABLITERATION_API_KEY=abl_live_...
23
- ```
39
+ Finally add this to the Gemfile:
24
40
 
25
- ## Quick start
41
+ gem 'abliteration', '~> 0.1.0'
26
42
 
27
- ```ruby
28
- require 'abliteration'
43
+ ### Install from Git
29
44
 
30
- Abliteration.configure do |c|
31
- c.access_token = ENV['ABLITERATION_API_KEY']
32
- end
45
+ If the Ruby gem is hosted at a git repository: https://github.com/GIT_USER_ID/GIT_REPO_ID, then add the following in the Gemfile:
33
46
 
34
- api = Abliteration::ModelsApi.new
35
- result = api.list_models(method: 'M4', limit: 5)
36
- result.data.each do |m|
37
- puts "#{m.id} - #{m.downloads}"
38
- end
47
+ gem 'abliteration', :git => 'https://github.com/GIT_USER_ID/GIT_REPO_ID.git'
48
+
49
+ ### Include the Ruby code directly
50
+
51
+ Include the Ruby code directly using `-I` as follows:
39
52
 
40
- # Envelope also carries billing/rate-limit metadata:
41
- puts "spent: #{result.cost}, wallet: #{result.credits_remaining}"
53
+ ```shell
54
+ ruby -Ilib script.rb
42
55
  ```
43
56
 
44
- Full API docs: <https://abliteration.org/api>
57
+ ## Getting Started
45
58
 
46
- ## Available APIs
59
+ Please follow the [installation](#installation) procedure and then run the following code:
47
60
 
48
- - `ModelsApi` - list and detail
49
- - `MethodsApi` - M1-M9 taxonomy
50
- - `IndicesApi` - DAI, Freedom Velocity, Weaponization, F2W Latency
51
- - `AuthorsApi`, `DatasetsApi`, `TimelineApi`
61
+ ```ruby
62
+ # Load the gem
63
+ require 'abliteration'
52
64
 
53
- ## Alternatives
65
+ # Setup authorization
66
+ Abliteration.configure do |config|
67
+ # Configure Bearer authorization: bearerAuth
68
+ config.access_token = 'YOUR_BEARER_TOKEN'
69
+ # Configure a proc to get access tokens in lieu of the static access_token configuration
70
+ config.access_token_getter = -> { 'YOUR TOKEN GETTER PROC' }
71
+ end
54
72
 
55
- - Python: `pip install abliteration`
56
- - CLI (Node): `npm install -g @abliteration/cli`
57
- - HTTP directly: any Ruby HTTP client + `Authorization: Bearer` header
73
+ api_instance = Abliteration::AuthorsApi.new
74
+ id = 'mlabonne' # String |
58
75
 
59
- ## License
76
+ begin
77
+ #Get one author
78
+ result = api_instance.get_author(id)
79
+ p result
80
+ rescue Abliteration::ApiError => e
81
+ puts "Exception when calling AuthorsApi->get_author: #{e}"
82
+ end
60
83
 
61
- MIT.
84
+ ```
62
85
 
63
- ---
86
+ ## Documentation for API Endpoints
87
+
88
+ All URIs are relative to *https://abliteration.org*
89
+
90
+ Class | Method | HTTP request | Description
91
+ ------------ | ------------- | ------------- | -------------
92
+ *Abliteration::AuthorsApi* | [**get_author**](docs/AuthorsApi.md#get_author) | **GET** /api/v1/authors/{id} | Get one author
93
+ *Abliteration::AuthorsApi* | [**list_authors**](docs/AuthorsApi.md#list_authors) | **GET** /api/v1/authors | List authors
94
+ *Abliteration::DatasetsApi* | [**get_dataset**](docs/DatasetsApi.md#get_dataset) | **GET** /api/v1/datasets/{id} | Get one dataset
95
+ *Abliteration::DatasetsApi* | [**list_datasets**](docs/DatasetsApi.md#list_datasets) | **GET** /api/v1/datasets | List datasets
96
+ *Abliteration::IndicesApi* | [**get_index**](docs/IndicesApi.md#get_index) | **GET** /api/v1/indices/{id} | One index with history
97
+ *Abliteration::IndicesApi* | [**list_indices**](docs/IndicesApi.md#list_indices) | **GET** /api/v1/indices | All four indices
98
+ *Abliteration::MethodsApi* | [**get_method**](docs/MethodsApi.md#get_method) | **GET** /api/v1/methods/{id} | Get one method
99
+ *Abliteration::MethodsApi* | [**list_methods**](docs/MethodsApi.md#list_methods) | **GET** /api/v1/methods | List the method taxonomy
100
+ *Abliteration::ModelsApi* | [**get_model**](docs/ModelsApi.md#get_model) | **GET** /api/v1/models/{id} | Get one model
101
+ *Abliteration::ModelsApi* | [**list_models**](docs/ModelsApi.md#list_models) | **GET** /api/v1/models | List models
102
+ *Abliteration::TimelineApi* | [**list_timeline**](docs/TimelineApi.md#list_timeline) | **GET** /api/v1/timeline | Curated field events
103
+
104
+
105
+ ## Documentation for Models
106
+
107
+ - [Abliteration::Author](docs/Author.md)
108
+ - [Abliteration::AuthorDetail](docs/AuthorDetail.md)
109
+ - [Abliteration::DaiPoint](docs/DaiPoint.md)
110
+ - [Abliteration::Dataset](docs/Dataset.md)
111
+ - [Abliteration::DatasetDetail](docs/DatasetDetail.md)
112
+ - [Abliteration::Envelope](docs/Envelope.md)
113
+ - [Abliteration::Error](docs/Error.md)
114
+ - [Abliteration::Event](docs/Event.md)
115
+ - [Abliteration::GetAuthor200Response](docs/GetAuthor200Response.md)
116
+ - [Abliteration::GetDataset200Response](docs/GetDataset200Response.md)
117
+ - [Abliteration::GetIndex200Response](docs/GetIndex200Response.md)
118
+ - [Abliteration::GetMethod200Response](docs/GetMethod200Response.md)
119
+ - [Abliteration::GetModel200Response](docs/GetModel200Response.md)
120
+ - [Abliteration::Index](docs/Index.md)
121
+ - [Abliteration::IndexDetail](docs/IndexDetail.md)
122
+ - [Abliteration::ListAuthors200Response](docs/ListAuthors200Response.md)
123
+ - [Abliteration::ListDatasets200Response](docs/ListDatasets200Response.md)
124
+ - [Abliteration::ListIndices200Response](docs/ListIndices200Response.md)
125
+ - [Abliteration::ListMethods200Response](docs/ListMethods200Response.md)
126
+ - [Abliteration::ListModels200Response](docs/ListModels200Response.md)
127
+ - [Abliteration::ListTimeline200Response](docs/ListTimeline200Response.md)
128
+ - [Abliteration::Method](docs/Method.md)
129
+ - [Abliteration::MethodDetail](docs/MethodDetail.md)
130
+ - [Abliteration::MethodDetailAllOfTopAuthors](docs/MethodDetailAllOfTopAuthors.md)
131
+ - [Abliteration::ModelDetail](docs/ModelDetail.md)
132
+ - [Abliteration::ModelSummary](docs/ModelSummary.md)
133
+ - [Abliteration::Passport](docs/Passport.md)
134
+
135
+
136
+ ## Documentation for Authorization
137
+
138
+
139
+ Authentication schemes defined for the API:
140
+ ### bearerAuth
141
+
142
+ - **Type**: Bearer authentication
64
143
 
65
- *This client is auto-generated from the OpenAPI spec at [/api/v1/openapi.json](https://abliteration.org/api/v1/openapi.json) using [openapi-generator](https://openapi-generator.tech).*
data/docs/Author.md CHANGED
@@ -4,6 +4,7 @@
4
4
 
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | Same value as &#x60;author&#x60;; added for consistency with the other single-entity payloads. | [optional] |
7
8
  | **author** | **String** | | [optional] |
8
9
  | **total_models** | **Integer** | | [optional] |
9
10
  | **total_downloads** | **Integer** | | [optional] |
@@ -16,6 +17,7 @@
16
17
  require 'abliteration'
17
18
 
18
19
  instance = Abliteration::Author.new(
20
+ id: null,
19
21
  author: null,
20
22
  total_models: null,
21
23
  total_downloads: null,
data/docs/AuthorDetail.md CHANGED
@@ -4,6 +4,7 @@
4
4
 
5
5
  | Name | Type | Description | Notes |
6
6
  | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | Same value as &#x60;author&#x60;; added for consistency with the other single-entity payloads. | [optional] |
7
8
  | **author** | **String** | | [optional] |
8
9
  | **total_models** | **Integer** | | [optional] |
9
10
  | **total_downloads** | **Integer** | | [optional] |
@@ -17,6 +18,7 @@
17
18
  require 'abliteration'
18
19
 
19
20
  instance = Abliteration::AuthorDetail.new(
21
+ id: null,
20
22
  author: null,
21
23
  total_models: null,
22
24
  total_downloads: null,
data/docs/AuthorsApi.md CHANGED
@@ -98,7 +98,7 @@ end
98
98
 
99
99
  api_instance = Abliteration::AuthorsApi.new
100
100
  opts = {
101
- sort: 'total_downloads', # String |
101
+ sort: 'total_downloads', # String | Bare key is DESC (largest first); a leading `-` flips to ASC. Aliases: `downloads` == `total_downloads`, `models` == `total_models`, `likes` == `total_likes`.
102
102
  limit: 56, # Integer | Rows to return, 1 to 1000. Values outside the range are clamped, not rejected.
103
103
  offset: 56 # Integer | Rows to skip. Negative and non-numeric values are treated as 0.
104
104
  }
@@ -134,7 +134,7 @@ end
134
134
 
135
135
  | Name | Type | Description | Notes |
136
136
  | ---- | ---- | ----------- | ----- |
137
- | **sort** | **String** | | [optional][default to &#39;-total_downloads&#39;] |
137
+ | **sort** | **String** | Bare key is DESC (largest first); a leading &#x60;-&#x60; flips to ASC. Aliases: &#x60;downloads&#x60; &#x3D;&#x3D; &#x60;total_downloads&#x60;, &#x60;models&#x60; &#x3D;&#x3D; &#x60;total_models&#x60;, &#x60;likes&#x60; &#x3D;&#x3D; &#x60;total_likes&#x60;. | [optional][default to &#39;total_downloads&#39;] |
138
138
  | **limit** | **Integer** | Rows to return, 1 to 1000. Values outside the range are clamped, not rejected. | [optional][default to 50] |
139
139
  | **offset** | **Integer** | Rows to skip. Negative and non-numeric values are treated as 0. | [optional][default to 0] |
140
140
 
data/docs/DatasetsApi.md CHANGED
@@ -101,7 +101,7 @@ opts = {
101
101
  category: 'category_example', # String | Workflow stage, for example heal or extract.
102
102
  author: 'author_example', # String | Publisher handle, case-insensitive.
103
103
  license: 'license_example', # String | License string as published.
104
- sort: 'downloads', # String |
104
+ sort: 'downloads', # String | Bare key is the natural direction (downloads/likes = most first, dates = newest first). A leading `-` flips it. `created` and `first_seen` are aliases for the full column names.
105
105
  limit: 56, # Integer | Rows to return, 1 to 1000. Values outside the range are clamped, not rejected.
106
106
  offset: 56 # Integer | Rows to skip. Negative and non-numeric values are treated as 0.
107
107
  }
@@ -140,7 +140,7 @@ end
140
140
  | **category** | **String** | Workflow stage, for example heal or extract. | [optional] |
141
141
  | **author** | **String** | Publisher handle, case-insensitive. | [optional] |
142
142
  | **license** | **String** | License string as published. | [optional] |
143
- | **sort** | **String** | | [optional][default to &#39;-downloads&#39;] |
143
+ | **sort** | **String** | Bare key is the natural direction (downloads/likes &#x3D; most first, dates &#x3D; newest first). A leading &#x60;-&#x60; flips it. &#x60;created&#x60; and &#x60;first_seen&#x60; are aliases for the full column names. | [optional][default to &#39;downloads&#39;] |
144
144
  | **limit** | **Integer** | Rows to return, 1 to 1000. Values outside the range are clamped, not rejected. | [optional][default to 50] |
145
145
  | **offset** | **Integer** | Rows to skip. Negative and non-numeric values are treated as 0. | [optional][default to 0] |
146
146
 
data/docs/IndicesApi.md CHANGED
@@ -28,7 +28,7 @@ Abliteration.configure do |config|
28
28
  end
29
29
 
30
30
  api_instance = Abliteration::IndicesApi.new
31
- id = 'dai' # String |
31
+ id = 'dai' # String | Canonical id or one of the short aliases (DAI, FV, WEAP, F2W). Case-insensitive.
32
32
 
33
33
  begin
34
34
  # One index with history
@@ -61,7 +61,7 @@ end
61
61
 
62
62
  | Name | Type | Description | Notes |
63
63
  | ---- | ---- | ----------- | ----- |
64
- | **id** | **String** | | |
64
+ | **id** | **String** | Canonical id or one of the short aliases (DAI, FV, WEAP, F2W). Case-insensitive. | |
65
65
 
66
66
  ### Return type
67
67
 
data/docs/ModelsApi.md CHANGED
@@ -106,7 +106,7 @@ opts = {
106
106
  downloads_lte: 56, # Integer |
107
107
  created_after: 'created_after_example', # String | ISO-8601 date or timestamp, inclusive.
108
108
  created_before: 'created_before_example', # String | ISO-8601 date or timestamp, inclusive.
109
- sort: 'downloads', # String |
109
+ sort: 'downloads', # String | Bare key is the natural direction (downloads/likes = most first, dates = newest first). A leading `-` flips it. `created` and `first_seen` are aliases for the full column names.
110
110
  limit: 56, # Integer | Rows to return, 1 to 1000. Values outside the range are clamped, not rejected.
111
111
  offset: 56 # Integer | Rows to skip. Negative and non-numeric values are treated as 0.
112
112
  }
@@ -150,7 +150,7 @@ end
150
150
  | **downloads_lte** | **Integer** | | [optional] |
151
151
  | **created_after** | **String** | ISO-8601 date or timestamp, inclusive. | [optional] |
152
152
  | **created_before** | **String** | ISO-8601 date or timestamp, inclusive. | [optional] |
153
- | **sort** | **String** | | [optional][default to &#39;-downloads&#39;] |
153
+ | **sort** | **String** | Bare key is the natural direction (downloads/likes &#x3D; most first, dates &#x3D; newest first). A leading &#x60;-&#x60; flips it. &#x60;created&#x60; and &#x60;first_seen&#x60; are aliases for the full column names. | [optional][default to &#39;downloads&#39;] |
154
154
  | **limit** | **Integer** | Rows to return, 1 to 1000. Values outside the range are clamped, not rejected. | [optional][default to 50] |
155
155
  | **offset** | **Integer** | Rows to skip. Negative and non-numeric values are treated as 0. | [optional][default to 0] |
156
156
 
@@ -85,7 +85,7 @@ module Abliteration
85
85
  # List authors
86
86
  # Cost: 5-15 credits, by rows returned.
87
87
  # @param [Hash] opts the optional parameters
88
- # @option opts [String] :sort (default to '-total_downloads')
88
+ # @option opts [String] :sort Bare key is DESC (largest first); a leading &#x60;-&#x60; flips to ASC. Aliases: &#x60;downloads&#x60; &#x3D;&#x3D; &#x60;total_downloads&#x60;, &#x60;models&#x60; &#x3D;&#x3D; &#x60;total_models&#x60;, &#x60;likes&#x60; &#x3D;&#x3D; &#x60;total_likes&#x60;. (default to 'total_downloads')
89
89
  # @option opts [Integer] :limit Rows to return, 1 to 1000. Values outside the range are clamped, not rejected. (default to 50)
90
90
  # @option opts [Integer] :offset Rows to skip. Negative and non-numeric values are treated as 0. (default to 0)
91
91
  # @return [ListAuthors200Response]
@@ -97,7 +97,7 @@ module Abliteration
97
97
  # List authors
98
98
  # Cost: 5-15 credits, by rows returned.
99
99
  # @param [Hash] opts the optional parameters
100
- # @option opts [String] :sort (default to '-total_downloads')
100
+ # @option opts [String] :sort Bare key is DESC (largest first); a leading &#x60;-&#x60; flips to ASC. Aliases: &#x60;downloads&#x60; &#x3D;&#x3D; &#x60;total_downloads&#x60;, &#x60;models&#x60; &#x3D;&#x3D; &#x60;total_models&#x60;, &#x60;likes&#x60; &#x3D;&#x3D; &#x60;total_likes&#x60;. (default to 'total_downloads')
101
101
  # @option opts [Integer] :limit Rows to return, 1 to 1000. Values outside the range are clamped, not rejected. (default to 50)
102
102
  # @option opts [Integer] :offset Rows to skip. Negative and non-numeric values are treated as 0. (default to 0)
103
103
  # @return [Array<(ListAuthors200Response, Integer, Hash)>] ListAuthors200Response data, response status code and response headers
@@ -105,7 +105,7 @@ module Abliteration
105
105
  if @api_client.config.debugging
106
106
  @api_client.config.logger.debug 'Calling API: AuthorsApi.list_authors ...'
107
107
  end
108
- allowable_values = ["total_downloads", "-total_downloads", "total_models", "-total_models"]
108
+ allowable_values = ["total_downloads", "-total_downloads", "downloads", "-downloads", "total_models", "-total_models", "models", "-models", "total_likes", "-total_likes", "likes", "-likes"]
109
109
  if @api_client.config.client_side_validation && opts[:'sort'] && !allowable_values.include?(opts[:'sort'])
110
110
  fail ArgumentError, "invalid value for \"sort\", must be one of #{allowable_values}"
111
111
  end
@@ -88,7 +88,7 @@ module Abliteration
88
88
  # @option opts [String] :category Workflow stage, for example heal or extract.
89
89
  # @option opts [String] :author Publisher handle, case-insensitive.
90
90
  # @option opts [String] :license License string as published.
91
- # @option opts [String] :sort (default to '-downloads')
91
+ # @option opts [String] :sort Bare key is the natural direction (downloads/likes &#x3D; most first, dates &#x3D; newest first). A leading &#x60;-&#x60; flips it. &#x60;created&#x60; and &#x60;first_seen&#x60; are aliases for the full column names. (default to 'downloads')
92
92
  # @option opts [Integer] :limit Rows to return, 1 to 1000. Values outside the range are clamped, not rejected. (default to 50)
93
93
  # @option opts [Integer] :offset Rows to skip. Negative and non-numeric values are treated as 0. (default to 0)
94
94
  # @return [ListDatasets200Response]
@@ -103,7 +103,7 @@ module Abliteration
103
103
  # @option opts [String] :category Workflow stage, for example heal or extract.
104
104
  # @option opts [String] :author Publisher handle, case-insensitive.
105
105
  # @option opts [String] :license License string as published.
106
- # @option opts [String] :sort (default to '-downloads')
106
+ # @option opts [String] :sort Bare key is the natural direction (downloads/likes &#x3D; most first, dates &#x3D; newest first). A leading &#x60;-&#x60; flips it. &#x60;created&#x60; and &#x60;first_seen&#x60; are aliases for the full column names. (default to 'downloads')
107
107
  # @option opts [Integer] :limit Rows to return, 1 to 1000. Values outside the range are clamped, not rejected. (default to 50)
108
108
  # @option opts [Integer] :offset Rows to skip. Negative and non-numeric values are treated as 0. (default to 0)
109
109
  # @return [Array<(ListDatasets200Response, Integer, Hash)>] ListDatasets200Response data, response status code and response headers
@@ -111,7 +111,7 @@ module Abliteration
111
111
  if @api_client.config.debugging
112
112
  @api_client.config.logger.debug 'Calling API: DatasetsApi.list_datasets ...'
113
113
  end
114
- allowable_values = ["downloads", "-downloads", "created_at", "-created_at", "first_seen_at", "-first_seen_at"]
114
+ allowable_values = ["downloads", "-downloads", "likes", "-likes", "created", "-created", "created_at", "-created_at", "first_seen", "-first_seen", "first_seen_at", "-first_seen_at"]
115
115
  if @api_client.config.client_side_validation && opts[:'sort'] && !allowable_values.include?(opts[:'sort'])
116
116
  fail ArgumentError, "invalid value for \"sort\", must be one of #{allowable_values}"
117
117
  end
@@ -21,7 +21,7 @@ module Abliteration
21
21
  end
22
22
  # One index with history
23
23
  # Cost: 10 credits. Only dai has a history series; the others return an empty array with history_available false.
24
- # @param id [String]
24
+ # @param id [String] Canonical id or one of the short aliases (DAI, FV, WEAP, F2W). Case-insensitive.
25
25
  # @param [Hash] opts the optional parameters
26
26
  # @return [GetIndex200Response]
27
27
  def get_index(id, opts = {})
@@ -31,7 +31,7 @@ module Abliteration
31
31
 
32
32
  # One index with history
33
33
  # Cost: 10 credits. Only dai has a history series; the others return an empty array with history_available false.
34
- # @param id [String]
34
+ # @param id [String] Canonical id or one of the short aliases (DAI, FV, WEAP, F2W). Case-insensitive.
35
35
  # @param [Hash] opts the optional parameters
36
36
  # @return [Array<(GetIndex200Response, Integer, Hash)>] GetIndex200Response data, response status code and response headers
37
37
  def get_index_with_http_info(id, opts = {})
@@ -43,7 +43,7 @@ module Abliteration
43
43
  fail ArgumentError, "Missing the required parameter 'id' when calling IndicesApi.get_index"
44
44
  end
45
45
  # verify enum value
46
- allowable_values = ["dai", "freedom-velocity", "weaponization", "f2w-latency"]
46
+ allowable_values = ["dai", "DAI", "freedom-velocity", "FV", "freedom_velocity", "weaponization", "WEAP", "f2w-latency", "F2W", "f2w_latency"]
47
47
  if @api_client.config.client_side_validation && !allowable_values.include?(id)
48
48
  fail ArgumentError, "invalid value for \"id\", must be one of #{allowable_values}"
49
49
  end
@@ -93,7 +93,7 @@ module Abliteration
93
93
  # @option opts [Integer] :downloads_lte
94
94
  # @option opts [String] :created_after ISO-8601 date or timestamp, inclusive.
95
95
  # @option opts [String] :created_before ISO-8601 date or timestamp, inclusive.
96
- # @option opts [String] :sort (default to '-downloads')
96
+ # @option opts [String] :sort Bare key is the natural direction (downloads/likes &#x3D; most first, dates &#x3D; newest first). A leading &#x60;-&#x60; flips it. &#x60;created&#x60; and &#x60;first_seen&#x60; are aliases for the full column names. (default to 'downloads')
97
97
  # @option opts [Integer] :limit Rows to return, 1 to 1000. Values outside the range are clamped, not rejected. (default to 50)
98
98
  # @option opts [Integer] :offset Rows to skip. Negative and non-numeric values are treated as 0. (default to 0)
99
99
  # @return [ListModels200Response]
@@ -113,7 +113,7 @@ module Abliteration
113
113
  # @option opts [Integer] :downloads_lte
114
114
  # @option opts [String] :created_after ISO-8601 date or timestamp, inclusive.
115
115
  # @option opts [String] :created_before ISO-8601 date or timestamp, inclusive.
116
- # @option opts [String] :sort (default to '-downloads')
116
+ # @option opts [String] :sort Bare key is the natural direction (downloads/likes &#x3D; most first, dates &#x3D; newest first). A leading &#x60;-&#x60; flips it. &#x60;created&#x60; and &#x60;first_seen&#x60; are aliases for the full column names. (default to 'downloads')
117
117
  # @option opts [Integer] :limit Rows to return, 1 to 1000. Values outside the range are clamped, not rejected. (default to 50)
118
118
  # @option opts [Integer] :offset Rows to skip. Negative and non-numeric values are treated as 0. (default to 0)
119
119
  # @return [Array<(ListModels200Response, Integer, Hash)>] ListModels200Response data, response status code and response headers
@@ -121,7 +121,7 @@ module Abliteration
121
121
  if @api_client.config.debugging
122
122
  @api_client.config.logger.debug 'Calling API: ModelsApi.list_models ...'
123
123
  end
124
- allowable_values = ["downloads", "-downloads", "created_at", "-created_at", "first_seen_at", "-first_seen_at"]
124
+ allowable_values = ["downloads", "-downloads", "likes", "-likes", "created", "-created", "created_at", "-created_at", "first_seen", "-first_seen", "first_seen_at", "-first_seen_at"]
125
125
  if @api_client.config.client_side_validation && opts[:'sort'] && !allowable_values.include?(opts[:'sort'])
126
126
  fail ArgumentError, "invalid value for \"sort\", must be one of #{allowable_values}"
127
127
  end
@@ -15,6 +15,9 @@ require 'time'
15
15
 
16
16
  module Abliteration
17
17
  class Author < ApiModelBase
18
+ # Same value as `author`; added for consistency with the other single-entity payloads.
19
+ attr_accessor :id
20
+
18
21
  attr_accessor :author
19
22
 
20
23
  attr_accessor :total_models
@@ -28,6 +31,7 @@ module Abliteration
28
31
  # Attribute mapping from ruby-style variable name to JSON key.
29
32
  def self.attribute_map
30
33
  {
34
+ :'id' => :'id',
31
35
  :'author' => :'author',
32
36
  :'total_models' => :'total_models',
33
37
  :'total_downloads' => :'total_downloads',
@@ -49,6 +53,7 @@ module Abliteration
49
53
  # Attribute type mapping.
50
54
  def self.openapi_types
51
55
  {
56
+ :'id' => :'String',
52
57
  :'author' => :'String',
53
58
  :'total_models' => :'Integer',
54
59
  :'total_downloads' => :'Integer',
@@ -80,6 +85,10 @@ module Abliteration
80
85
  h[k.to_sym] = v
81
86
  }
82
87
 
88
+ if attributes.key?(:'id')
89
+ self.id = attributes[:'id']
90
+ end
91
+
83
92
  if attributes.key?(:'author')
84
93
  self.author = attributes[:'author']
85
94
  end
@@ -121,6 +130,7 @@ module Abliteration
121
130
  def ==(o)
122
131
  return true if self.equal?(o)
123
132
  self.class == o.class &&
133
+ id == o.id &&
124
134
  author == o.author &&
125
135
  total_models == o.total_models &&
126
136
  total_downloads == o.total_downloads &&
@@ -137,7 +147,7 @@ module Abliteration
137
147
  # Calculates hash code according to all attributes.
138
148
  # @return [Integer] Hash code
139
149
  def hash
140
- [author, total_models, total_downloads, total_likes, first_seen_at].hash
150
+ [id, author, total_models, total_downloads, total_likes, first_seen_at].hash
141
151
  end
142
152
 
143
153
  # Builds the object from hash
@@ -15,6 +15,9 @@ require 'time'
15
15
 
16
16
  module Abliteration
17
17
  class AuthorDetail < ApiModelBase
18
+ # Same value as `author`; added for consistency with the other single-entity payloads.
19
+ attr_accessor :id
20
+
18
21
  attr_accessor :author
19
22
 
20
23
  attr_accessor :total_models
@@ -30,6 +33,7 @@ module Abliteration
30
33
  # Attribute mapping from ruby-style variable name to JSON key.
31
34
  def self.attribute_map
32
35
  {
36
+ :'id' => :'id',
33
37
  :'author' => :'author',
34
38
  :'total_models' => :'total_models',
35
39
  :'total_downloads' => :'total_downloads',
@@ -52,6 +56,7 @@ module Abliteration
52
56
  # Attribute type mapping.
53
57
  def self.openapi_types
54
58
  {
59
+ :'id' => :'String',
55
60
  :'author' => :'String',
56
61
  :'total_models' => :'Integer',
57
62
  :'total_downloads' => :'Integer',
@@ -90,6 +95,10 @@ module Abliteration
90
95
  h[k.to_sym] = v
91
96
  }
92
97
 
98
+ if attributes.key?(:'id')
99
+ self.id = attributes[:'id']
100
+ end
101
+
93
102
  if attributes.key?(:'author')
94
103
  self.author = attributes[:'author']
95
104
  end
@@ -137,6 +146,7 @@ module Abliteration
137
146
  def ==(o)
138
147
  return true if self.equal?(o)
139
148
  self.class == o.class &&
149
+ id == o.id &&
140
150
  author == o.author &&
141
151
  total_models == o.total_models &&
142
152
  total_downloads == o.total_downloads &&
@@ -154,7 +164,7 @@ module Abliteration
154
164
  # Calculates hash code according to all attributes.
155
165
  # @return [Integer] Hash code
156
166
  def hash
157
- [author, total_models, total_downloads, total_likes, first_seen_at, models].hash
167
+ [id, author, total_models, total_downloads, total_likes, first_seen_at, models].hash
158
168
  end
159
169
 
160
170
  # Builds the object from hash
@@ -11,5 +11,5 @@ Generator version: 7.25.0
11
11
  =end
12
12
 
13
13
  module Abliteration
14
- VERSION = '0.1.0'
14
+ VERSION = '0.1.1'
15
15
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: abliteration
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Catyonic OU
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-09-16 00:00:00.000000000 Z
11
+ date: 2026-09-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: typhoeus