You are viewing documentation for version 3 of the AWS SDK for Ruby. Version 2 documentation can be found here.

Class: Aws::Comprehend::Client

Inherits:
Seahorse::Client::Base show all
Includes:
Aws::ClientStubs
Defined in:
gems/aws-sdk-comprehend/lib/aws-sdk-comprehend/client.rb

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

API Operations collapse

Instance Method Summary collapse

Methods included from Aws::ClientStubs

#stub_data, #stub_responses

Methods inherited from Seahorse::Client::Base

add_plugin, api, clear_plugins, define, new, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(*args) ⇒ Client

Returns a new instance of Client

Parameters:

  • options (Hash)

    a customizable set of options



152
153
154
# File 'gems/aws-sdk-comprehend/lib/aws-sdk-comprehend/client.rb', line 152

def initialize(*args)
  super
end

Instance Method Details

#batch_detect_dominant_language(params = {}) ⇒ Types::BatchDetectDominantLanguageResponse

Determines the dominant language of the input text for a batch of documents. For a list of languages that Amazon Comprehend can detect, see Amazon Comprehend Supported Languages.

Examples:

Request syntax with placeholder values


resp = client.batch_detect_dominant_language({
  text_list: ["String"], # required
})

Response structure


resp.result_list #=> Array
resp.result_list[0].index #=> Integer
resp.result_list[0].languages #=> Array
resp.result_list[0].languages[0].language_code #=> String
resp.result_list[0].languages[0].score #=> Float
resp.error_list #=> Array
resp.error_list[0].index #=> Integer
resp.error_list[0].error_code #=> String
resp.error_list[0].error_message #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :text_list (required, Array<String>)

    A list containing the text of the input documents. The list can contain a maximum of 25 documents. Each document should contain at least 20 characters and must contain fewer than 5,000 bytes of UTF-8 encoded characters.

Returns:

See Also:



199
200
201
202
# File 'gems/aws-sdk-comprehend/lib/aws-sdk-comprehend/client.rb', line 199

def batch_detect_dominant_language(params = {}, options = {})
  req = build_request(:batch_detect_dominant_language, params)
  req.send_request(options)
end

#batch_detect_entities(params = {}) ⇒ Types::BatchDetectEntitiesResponse

Inspects the text of a batch of documents and returns information about them. For more information about entities, see how-entities

Examples:

Request syntax with placeholder values


resp = client.batch_detect_entities({
  text_list: ["String"], # required
  language_code: "String", # required
})

Response structure


resp.result_list #=> Array
resp.result_list[0].index #=> Integer
resp.result_list[0].entities #=> Array
resp.result_list[0].entities[0].score #=> Float
resp.result_list[0].entities[0].type #=> String, one of "PERSON", "LOCATION", "ORGANIZATION", "COMMERCIAL_ITEM", "EVENT", "DATE", "QUANTITY", "TITLE", "OTHER"
resp.result_list[0].entities[0].text #=> String
resp.result_list[0].entities[0].begin_offset #=> Integer
resp.result_list[0].entities[0].end_offset #=> Integer
resp.error_list #=> Array
resp.error_list[0].index #=> Integer
resp.error_list[0].error_code #=> String
resp.error_list[0].error_message #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :text_list (required, Array<String>)

    A list containing the text of the input documents. The list can contain a maximum of 25 documents. Each document must contain fewer than 5,000 bytes of UTF-8 encoded characters.

  • :language_code (required, String)

    The language of the input documents. All documents must be in the same language.

Returns:

See Also:



247
248
249
250
# File 'gems/aws-sdk-comprehend/lib/aws-sdk-comprehend/client.rb', line 247

def batch_detect_entities(params = {}, options = {})
  req = build_request(:batch_detect_entities, params)
  req.send_request(options)
end

#batch_detect_key_phrases(params = {}) ⇒ Types::BatchDetectKeyPhrasesResponse

Detects the key noun phrases found in a batch of documents.

Examples:

Request syntax with placeholder values


resp = client.batch_detect_key_phrases({
  text_list: ["String"], # required
  language_code: "String", # required
})

Response structure


resp.result_list #=> Array
resp.result_list[0].index #=> Integer
resp.result_list[0].key_phrases #=> Array
resp.result_list[0].key_phrases[0].score #=> Float
resp.result_list[0].key_phrases[0].text #=> String
resp.result_list[0].key_phrases[0].begin_offset #=> Integer
resp.result_list[0].key_phrases[0].end_offset #=> Integer
resp.error_list #=> Array
resp.error_list[0].index #=> Integer
resp.error_list[0].error_code #=> String
resp.error_list[0].error_message #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :text_list (required, Array<String>)

    A list containing the text of the input documents. The list can contain a maximum of 25 documents. Each document must contain fewer that 5,000 bytes of UTF-8 encoded characters.

  • :language_code (required, String)

    The language of the input documents. All documents must be in the same language.

Returns:

See Also:



293
294
295
296
# File 'gems/aws-sdk-comprehend/lib/aws-sdk-comprehend/client.rb', line 293

def batch_detect_key_phrases(params = {}, options = {})
  req = build_request(:batch_detect_key_phrases, params)
  req.send_request(options)
end

#batch_detect_sentiment(params = {}) ⇒ Types::BatchDetectSentimentResponse

Inspects a batch of documents and returns an inference of the prevailing sentiment, POSITIVE, NEUTRAL, MIXED, or NEGATIVE, in each one.

Examples:

Request syntax with placeholder values


resp = client.batch_detect_sentiment({
  text_list: ["String"], # required
  language_code: "String", # required
})

Response structure


resp.result_list #=> Array
resp.result_list[0].index #=> Integer
resp.result_list[0].sentiment #=> String, one of "POSITIVE", "NEGATIVE", "NEUTRAL", "MIXED"
resp.result_list[0].sentiment_score.positive #=> Float
resp.result_list[0].sentiment_score.negative #=> Float
resp.result_list[0].sentiment_score.neutral #=> Float
resp.result_list[0].sentiment_score.mixed #=> Float
resp.error_list #=> Array
resp.error_list[0].index #=> Integer
resp.error_list[0].error_code #=> String
resp.error_list[0].error_message #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :text_list (required, Array<String>)

    A list containing the text of the input documents. The list can contain a maximum of 25 documents. Each document must contain fewer that 5,000 bytes of UTF-8 encoded characters.

  • :language_code (required, String)

    The language of the input documents. All documents must be in the same language.

Returns:

See Also:



341
342
343
344
# File 'gems/aws-sdk-comprehend/lib/aws-sdk-comprehend/client.rb', line 341

def batch_detect_sentiment(params = {}, options = {})
  req = build_request(:batch_detect_sentiment, params)
  req.send_request(options)
end

#describe_topics_detection_job(params = {}) ⇒ Types::DescribeTopicsDetectionJobResponse

Gets the properties associated with a topic detection job. Use this operation to get the status of a detection job.

Examples:

Request syntax with placeholder values


resp = client.describe_topics_detection_job({
  job_id: "JobId", # required
})

Response structure


resp.topics_detection_job_properties.job_id #=> String
resp.topics_detection_job_properties.job_name #=> String
resp.topics_detection_job_properties.job_status #=> String, one of "SUBMITTED", "IN_PROGRESS", "COMPLETED", "FAILED"
resp.topics_detection_job_properties.message #=> String
resp.topics_detection_job_properties.submit_time #=> Time
resp.topics_detection_job_properties.end_time #=> Time
resp.topics_detection_job_properties.input_data_config.s3_uri #=> String
resp.topics_detection_job_properties.input_data_config.input_format #=> String, one of "ONE_DOC_PER_FILE", "ONE_DOC_PER_LINE"
resp.topics_detection_job_properties.output_data_config.s3_uri #=> String
resp.topics_detection_job_properties.number_of_topics #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :job_id (required, String)

    The identifier assigned by the user to the detection job.

Returns:

See Also:



379
380
381
382
# File 'gems/aws-sdk-comprehend/lib/aws-sdk-comprehend/client.rb', line 379

def describe_topics_detection_job(params = {}, options = {})
  req = build_request(:describe_topics_detection_job, params)
  req.send_request(options)
end

#detect_dominant_language(params = {}) ⇒ Types::DetectDominantLanguageResponse

Determines the dominant language of the input text. For a list of languages that Amazon Comprehend can detect, see Amazon Comprehend Supported Languages.

Examples:

Request syntax with placeholder values


resp = client.detect_dominant_language({
  text: "String", # required
})

Response structure


resp.languages #=> Array
resp.languages[0].language_code #=> String
resp.languages[0].score #=> Float

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :text (required, String)

    A UTF-8 text string. Each string should contain at least 20 characters and must contain fewer that 5,000 bytes of UTF-8 encoded characters.

Returns:

See Also:



416
417
418
419
# File 'gems/aws-sdk-comprehend/lib/aws-sdk-comprehend/client.rb', line 416

def detect_dominant_language(params = {}, options = {})
  req = build_request(:detect_dominant_language, params)
  req.send_request(options)
end

#detect_entities(params = {}) ⇒ Types::DetectEntitiesResponse

Inspects text for entities, and returns information about them. For more information, about entities, see how-entities.

Examples:

Request syntax with placeholder values


resp = client.detect_entities({
  text: "String", # required
  language_code: "en", # required, accepts en, es
})

Response structure


resp.entities #=> Array
resp.entities[0].score #=> Float
resp.entities[0].type #=> String, one of "PERSON", "LOCATION", "ORGANIZATION", "COMMERCIAL_ITEM", "EVENT", "DATE", "QUANTITY", "TITLE", "OTHER"
resp.entities[0].text #=> String
resp.entities[0].begin_offset #=> Integer
resp.entities[0].end_offset #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :text (required, String)

    A UTF-8 text string. Each string must contain fewer that 5,000 bytes of UTF-8 encoded characters.

  • :language_code (required, String)

    The RFC 5646 language code of the input text. If the request does not specify the language code, the service detects the dominant language. If you specify a language code that the service does not support, it returns UnsupportedLanguageException exception. For more information about RFC 5646, see Tags for Identifying Languages on the IETF Tools web site.

Returns:

See Also:



464
465
466
467
# File 'gems/aws-sdk-comprehend/lib/aws-sdk-comprehend/client.rb', line 464

def detect_entities(params = {}, options = {})
  req = build_request(:detect_entities, params)
  req.send_request(options)
end

#detect_key_phrases(params = {}) ⇒ Types::DetectKeyPhrasesResponse

Detects the key noun phrases found in the text.

Examples:

Request syntax with placeholder values


resp = client.detect_key_phrases({
  text: "String", # required
  language_code: "en", # required, accepts en, es
})

Response structure


resp.key_phrases #=> Array
resp.key_phrases[0].score #=> Float
resp.key_phrases[0].text #=> String
resp.key_phrases[0].begin_offset #=> Integer
resp.key_phrases[0].end_offset #=> Integer

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :text (required, String)

    A UTF-8 text string. Each string must contain fewer that 5,000 bytes of UTF-8 encoded characters.

  • :language_code (required, String)

    The RFC 5646 language code for the input text. If you don't specify a language code, Amazon Comprehend detects the dominant language. If you specify the code for a language that Amazon Comprehend does not support, it returns and UnsupportedLanguageException. For more information about RFC 5646, see Tags for Identifying Languages on the IETF Tools web site.

Returns:

See Also:



510
511
512
513
# File 'gems/aws-sdk-comprehend/lib/aws-sdk-comprehend/client.rb', line 510

def detect_key_phrases(params = {}, options = {})
  req = build_request(:detect_key_phrases, params)
  req.send_request(options)
end

#detect_sentiment(params = {}) ⇒ Types::DetectSentimentResponse

Inspects text and returns an inference of the prevailing sentiment (POSITIVE, NEUTRAL, MIXED, or NEGATIVE).

Examples:

Request syntax with placeholder values


resp = client.detect_sentiment({
  text: "String", # required
  language_code: "en", # required, accepts en, es
})

Response structure


resp.sentiment #=> String, one of "POSITIVE", "NEGATIVE", "NEUTRAL", "MIXED"
resp.sentiment_score.positive #=> Float
resp.sentiment_score.negative #=> Float
resp.sentiment_score.neutral #=> Float
resp.sentiment_score.mixed #=> Float

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :text (required, String)

    A UTF-8 text string. Each string must contain fewer that 5,000 bytes of UTF-8 encoded characters.

  • :language_code (required, String)

    The RFC 5646 language code for the input text. If you don't specify a language code, Amazon Comprehend detects the dominant language. If you specify the code for a language that Amazon Comprehend does not support, it returns and UnsupportedLanguageException. For more information about RFC 5646, see Tags for Identifying Languages on the IETF Tools web site.

Returns:

See Also:



558
559
560
561
# File 'gems/aws-sdk-comprehend/lib/aws-sdk-comprehend/client.rb', line 558

def detect_sentiment(params = {}, options = {})
  req = build_request(:detect_sentiment, params)
  req.send_request(options)
end

#list_topics_detection_jobs(params = {}) ⇒ Types::ListTopicsDetectionJobsResponse

Gets a list of the topic detection jobs that you have submitted.

Examples:

Request syntax with placeholder values


resp = client.list_topics_detection_jobs({
  filter: {
    job_name: "JobName",
    job_status: "SUBMITTED", # accepts SUBMITTED, IN_PROGRESS, COMPLETED, FAILED
    submit_time_before: Time.now,
    submit_time_after: Time.now,
  },
  next_token: "String",
  max_results: 1,
})

Response structure


resp.topics_detection_job_properties_list #=> Array
resp.topics_detection_job_properties_list[0].job_id #=> String
resp.topics_detection_job_properties_list[0].job_name #=> String
resp.topics_detection_job_properties_list[0].job_status #=> String, one of "SUBMITTED", "IN_PROGRESS", "COMPLETED", "FAILED"
resp.topics_detection_job_properties_list[0].message #=> String
resp.topics_detection_job_properties_list[0].submit_time #=> Time
resp.topics_detection_job_properties_list[0].end_time #=> Time
resp.topics_detection_job_properties_list[0].input_data_config.s3_uri #=> String
resp.topics_detection_job_properties_list[0].input_data_config.input_format #=> String, one of "ONE_DOC_PER_FILE", "ONE_DOC_PER_LINE"
resp.topics_detection_job_properties_list[0].output_data_config.s3_uri #=> String
resp.topics_detection_job_properties_list[0].number_of_topics #=> Integer
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :filter (Types::TopicsDetectionJobFilter)

    Filters the jobs that are returned. Jobs can be filtered on their name, status, or the date and time that they were submitted. You can set only one filter at a time.

  • :next_token (String)

    Identifies the next page of results to return.

  • :max_results (Integer)

    The maximum number of results to return in each page.

Returns:

See Also:



613
614
615
616
# File 'gems/aws-sdk-comprehend/lib/aws-sdk-comprehend/client.rb', line 613

def list_topics_detection_jobs(params = {}, options = {})
  req = build_request(:list_topics_detection_jobs, params)
  req.send_request(options)
end

#start_topics_detection_job(params = {}) ⇒ Types::StartTopicsDetectionJobResponse

Starts an asynchronous topic detection job. Use the DescribeTopicDetectionJob operation to track the status of a job.

Examples:

Request syntax with placeholder values


resp = client.start_topics_detection_job({
  input_data_config: { # required
    s3_uri: "S3Uri", # required
    input_format: "ONE_DOC_PER_FILE", # accepts ONE_DOC_PER_FILE, ONE_DOC_PER_LINE
  },
  output_data_config: { # required
    s3_uri: "S3Uri", # required
  },
  data_access_role_arn: "IamRoleArn", # required
  job_name: "JobName",
  number_of_topics: 1,
  client_request_token: "ClientRequestTokenString",
})

Response structure


resp.job_id #=> String
resp.job_status #=> String, one of "SUBMITTED", "IN_PROGRESS", "COMPLETED", "FAILED"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :input_data_config (required, Types::InputDataConfig)

    Specifies the format and location of the input data for the job.

  • :output_data_config (required, Types::OutputDataConfig)

    Specifies where to send the output files.

  • :data_access_role_arn (required, String)

    The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that grants Amazon Comprehend read access to your input data.

  • :job_name (String)

    The identifier of the job.

  • :number_of_topics (Integer)

    The number of topics to detect.

  • :client_request_token (String)

    A unique identifier for the request. If you do not set the client request token, Amazon Comprehend generates one.

    A suitable default value is auto-generated. You should normally not need to pass this option.**

Returns:

See Also:



675
676
677
678
# File 'gems/aws-sdk-comprehend/lib/aws-sdk-comprehend/client.rb', line 675

def start_topics_detection_job(params = {}, options = {})
  req = build_request(:start_topics_detection_job, params)
  req.send_request(options)
end