-
Notifications
You must be signed in to change notification settings - Fork 16
Release Notes
asoosprecognox edited this page Jul 10, 2024
·
51 revisions
These are modifications since the previous release that may require changes in your calls to the binding.
- FieldedDateRecord and FieldedAddressRecord fields are expanded
- Added info messages to RecordSimilarityResponse and RecordSimilarityResult
- RecordSimilarityProperties supports sending parameters or parameterUniverse
- RecordSimilarityFieldInfo now have a scoreIfNull field, to specify a value for when a field is missing in a record
Breaking changes
- Response will deserialize fields to UnknownFieldRecord objects
- Changed error to be a list of string in RecordSimilarityResult
- FieldedAddressRecord no longer has an address field
- RecordFieldType changed from an enum to a class with public static String values
- Add support and example for
/record-similarity
- Added information about the indoc-coref option to
/entities
example - Website, logo, email address and other branding updates.
- Fixed
/events
negation example
- Upgrade Newtonsoft.Json from 10.0.2 to 13.0.2.
- Upgrade log4net from 2.0.10 to 2.0.15.
- Add support for the
/events
endpoint. - Add support for negation in the
/events
endpoint.
- Upgrade
System.Net.Http
dependency from 4.3.3 to 4.3.4.
- Support unfielded addresses and update address example for /address-similarity
- New AddressSimilarity endpoint
- added new
/entities
response fieldpermId
. - added new
/entities
response fielddbpediaTypes
. - obsoleted
/entities
response fielddbpediaType
.
- New Similar Terms endpoint
/semantics/similar
- New Similar Terms example
-
/text-embedding
endpoint changed to/semantics/vector
-
/text-embedding
example changed to/semantics/vector
example -
/sentiment
and/entities
now return mention offsets, linking confidence and salience.
- No functional changes. Infrastructure related.
- The
TextEmbeddingResponse
class now allows users to request per-token embeddings from the/text-embedding
endpoint. This can be enabled by settingperToken
totrue
. - The
TextEmbeddingResponse
classembedding
field has been renamed todocumentEmbedding
. Additionally, two fields,tokens
andtokenEmbeddings
, have been added to the class in order to reflect the/text-embedding
endpoint's new support for per-token embeddings.
- Multilingual language identification example
- User Agent includes runtime version
- Changed some internal plumbing to reduce the chance of concurrency collisions if the concurrency count is updated during a run
- New Topics endpoint
- New Topics example
- Client property changed to read-only. The http client is set during class instantiation, either externally or internally. The Client property is available to allow the use of the existing instance in other instances.
- Concurrency property changed to read-only. Since concurrency requires a reset of the http client, and the internal client self-adjusts to the maximum allowable concurrency as set by the Rosette API plan, there is no need to change it during a run.
- URLString property changed to read-only. The url string is the base url, e.g. https://api.rosette.com, and should not be changed during the lifetime of the http client. If a different url string is desired, instantiate a new class.
- Removed dependency on System.Web.Script.Serialization in order to offer compatibility with .Net Core
- Added methods for setting, getting and clearing Url Parameters to be used for Uri query string
- Fixed a nuspec problem that was causing issues with Nuget install/upgrade
- new NameDeduplication endpoint
- new Transliteration endpoint
- new examples for each
- confidence for entities and sentiment
- SyntaxDependenciesResponse restructured: The new format is List Sentences and List Tokens. This new format was introduced because the old format of List Dependencies and List Tokens did not account for input with more than one sentence.
- Strongly type response objects for each endpoint have been added to reduce the impact of changes from the server
- RosetteResponse deprecated
- syntax dependencies endpoint added
- Bug fixed. One way of calling the new TextEmbedding endpoint returned a RelationshipResponse; this has been fixed to return a TextEmbeddingResponse.
- Content property of the RosetteResponse class deprecated and substituted by the strongly typed properties in the Response classes (e.g. MorphologyResponse) that inherit from RosetteResponse.
- Binding reflects unification of
/entities
and/entities/linked
endpoints;/entities
returns a new response model which includes QIDs by default - EntitiesLinked object and resolveEntities parameter are not available anymore (use Entity instead)
- linkEntities option is available to turn off QIDs through
EntitiesCAPI.SetOption("linkEntities", false);
- Max Concurrency can be obtained from the response header on any call
- Added
api.SetOption(name, value)
,api.GetOption(name)
andapi.ClearOptions()
to allow a user to set options directly. Setting an option tonull
removes it from the option dictionary.
- Nothing to write home about
- Optional ContentType argument in endpoint calls currently does nothing. The contentType parameter was removed, but the argument is being kept in the event of a change. RosetteFile does accept ContentType for defining the file contents, but the other methods use "application/json" as the Content-Type.
- Return type
Dictionary<string, object>
replaced withRosetteResponse
, which provides properties for the Headers asIDictionary<string, string>
, Content asIDictionary<string, object>
, and ContentAsJSON asJSON
. - Morphology endpoint
feature
variable updated to be anenum
instead of astring
, so that Intellisense can aid in choosing the desired feature. -
Methods and classes deprecated: The
/matched-name
and/translated-name
endpoints have been renamed to/name-similarity
and/name-translation
in the Rosette API, so the C# binding reflects those changes by adding new methods and classes reflecting those new endpoint names. FunctionsmatchedName
andtranslatedName
and their corresponding classes have been deprecated.
These changes should not require modifications to your bindings calls, but represent major internal changes, often correlating to Rosette API functional changes indicated here.
- Wrapped SetupClient in a lock in order to prevent collisions during concurrent runs
- Clean up of deprecated calls in unit test mocks
- TopicsResponse.cs, Concept.cs and KeyPhrase.cs created to support Topics
- Topics unit tests added
- Changed to read-only: Client, Concurrency, URLString
- Internal http client set to class level variable
- Runtime http client changes moved to the Property that causes the change
- Removed SetupClient() call from each endpoint process. SetupClient() is called on startup and if the Concurrency changes.
- Code cleanup per Analysis. Should be no outward facing changes.
- Unit tests added for name deduplication and transliteration
- minor code cleanup (removed unnecessary using)
- Fixed duplicate key bug that occurred when multiple relationships were returned in a RelationshipResponse.
- Strongly-typed, endpoint-specific classes that inherit from RosetteResponse added
- A new RosetteEntity class has constants for soft coding entity types returned by the RosetteAPI and, among other properties, an ID property of type EntityID. The EntityID class has a GetWikipediaURL() method that returns the link to Wikipedia if the ID is a QID and successfully gets a response from Wikipedia or null in any other case.
- Added TextEmbedding endpoint. The Text Embedding endpoint returns a single vector of floating point numbers for your input, known as a text embedding. Among other uses, a text embedding enables you to calculate the similarity between two documents or two words.
- Modified 429 retry timeout default to 5000ms
- Modified HttpClient Timeout default to null (let the server dictate the timeout)
- Retooled unit testing to provide better coverage
- Internal code changes per unit test and functional test discoveries
- Added a retry feature when encountering 429 (too many requests) errors. The user may specify the number of retries, default 5, and the number of milliseconds between retries, default 500000, to reduce the number of 429s.
- Changed file handling from base64 encoding to multipart
- Code was refactored into 1:1 class to file
- Unit tests revamped to use MockHttp and provide better coverage