"chat-cohere-chat-request-v2"
*****************************

* Description

* Usage

* Required Parameters

* Optional Parameters

* Global Parameters

* Example using required parameter


Description
===========

Creates a response for the given conversation.


Usage
=====

   oci generative-ai-inference chat-result chat-cohere-chat-request-v2 [OPTIONS]


Required Parameters
===================

--chat-request-messages [complex type]

A list of chat messages in chronological order, representing a
conversation between the user and the model. This is a complex type
whose value must be valid JSON. The value can be provided as a string
on the command line or passed in as a file using the
file://path/to/file syntax.

The "--generate-param-json-input" option can be used to generate an
example of the JSON which must be provided. We recommend storing this
example in a file, modifying it as needed and then passing it back in
via the file:// syntax.

--compartment-id, -c [text]

The OCID of compartment in which to call the Generative AI service to
chat.

--serving-mode [complex type]

This is a complex type whose value must be valid JSON. The value can
be provided as a string on the command line or passed in as a file
using the file://path/to/file syntax.

The "--generate-param-json-input" option can be used to generate an
example of the JSON which must be provided. We recommend storing this
example in a file, modifying it as needed and then passing it back in
via the file:// syntax.


Optional Parameters
===================

--chat-request-citation-options [complex type]

This is a complex type whose value must be valid JSON. The value can
be provided as a string on the command line or passed in as a file
using the file://path/to/file syntax.

The "--generate-param-json-input" option can be used to generate an
example of the JSON which must be provided. We recommend storing this
example in a file, modifying it as needed and then passing it back in
via the file:// syntax.

--chat-request-documents [complex type]

A list of relevant documents that the model can refer to for
generating grounded responses to the user’s requests. Some example
keys that you can add to the dictionary are “text”, “author”, and
“date”. Keep the total word count of the strings in the dictionary to
300 words or less. This is a complex type whose value must be valid
JSON. The value can be provided as a string on the command line or
passed in as a file using the file://path/to/file syntax.

The "--generate-param-json-input" option can be used to generate an
example of the JSON which must be provided. We recommend storing this
example in a file, modifying it as needed and then passing it back in
via the file:// syntax.

--chat-request-frequency-penalty [text]

To reduce repetitiveness of generated tokens, this number penalizes
new tokens based on their frequency in the generated text so far.
Greater numbers encourage the model to use new tokens, while lower
numbers encourage the model to repeat the tokens. Set to 0 to disable.

--chat-request-is-log-probs-enabled [boolean]

The log probabilities of the generated tokens will be included in the
response.

--chat-request-is-raw-prompting [boolean]

When enabled, the user’s *message* will be sent to the model without
any preprocessing.

--chat-request-is-search-queries-only [boolean]

When set to true, the response contains only a list of generated
search queries without the search results and the model will not
respond to the user’s message.

--chat-request-is-stream [boolean]

Whether to stream the partial progress of the model’s response. When
set to true, as tokens become available, they are sent as data-only
server-sent events.

--chat-request-is-strict-tools-enabled [boolean]

When set to true, tool calls in the Assistant message will be forced
to follow the tool definition strictly. Note:The first few requests
with a new set of tools will take longer to process.

--chat-request-max-tokens [integer]

The maximum number of output tokens that the model will generate for
the response. The token count of your prompt plus maxTokens must not
exceed the model’s context length. For on-demand inferencing, the
response length is capped at 4,000 tokens for each run.

--chat-request-presence-penalty [text]

To reduce repetitiveness of generated tokens, this number penalizes
new tokens based on whether they’ve appeared in the generated text so
far. Greater numbers encourage the model to use new tokens, while
lower numbers encourage the model to repeat the tokens.

Similar to frequency penalty, a penalty is applied to previously
present tokens, except that this penalty is applied equally to all
tokens that have already appeared, regardless of how many times
they’ve appeared. Set to 0 to disable.

--chat-request-priority [integer]

The priority of the request (lower means earlier handling; default 0
highest priority). Higher priority requests are handled first, and
dropped last when the system is under load.

--chat-request-response-format [complex type]

This is a complex type whose value must be valid JSON. The value can
be provided as a string on the command line or passed in as a file
using the file://path/to/file syntax.

The "--generate-param-json-input" option can be used to generate an
example of the JSON which must be provided. We recommend storing this
example in a file, modifying it as needed and then passing it back in
via the file:// syntax.

--chat-request-safety-mode [text]

Safety mode: Adds a safety instruction for the model to use when
generating responses. Contextual: (Default) Puts fewer constraints on
the output. It maintains core protections by aiming to reject harmful
or illegal suggestions, but it allows profanity and some toxic
content, sexually explicit and violent content, and content that
contains medical, financial, or legal information. Contextual mode is
suited for entertainment, creative, or academic use. Strict: Aims to
avoid sensitive topics, such as violent or sexual acts and profanity.
This mode aims to provide a safer experience by prohibiting responses
or recommendations that it finds inappropriate. Strict mode is suited
for corporate use, such as for corporate communications and customer
service. Off: No safety mode is applied. Note: This parameter is only
compatible with models cohere.command-r-08-2024,
cohere.command-r-plus-08-2024 and Cohere models released after these
models. See release dates.

Accepted values are:

   CONTEXTUAL, OFF, STRICT

--chat-request-seed [integer]

If specified, the backend will make a best effort to sample tokens
deterministically, so that repeated requests with the same seed and
parameters yield the same result. However, determinism cannot be fully
guaranteed.

--chat-request-stop-sequences [complex type]

Stop the model generation when it reaches a stop sequence defined in
this parameter. This is a complex type whose value must be valid JSON.
The value can be provided as a string on the command line or passed in
as a file using the file://path/to/file syntax.

The "--generate-param-json-input" option can be used to generate an
example of the JSON which must be provided. We recommend storing this
example in a file, modifying it as needed and then passing it back in
via the file:// syntax.

--chat-request-stream-options [complex type]

This is a complex type whose value must be valid JSON. The value can
be provided as a string on the command line or passed in as a file
using the file://path/to/file syntax.

The "--generate-param-json-input" option can be used to generate an
example of the JSON which must be provided. We recommend storing this
example in a file, modifying it as needed and then passing it back in
via the file:// syntax.

--chat-request-temperature [text]

A number that sets the randomness of the generated output. A lower
temperature means less random generations. Use lower numbers for tasks
such as question answering or summarizing. High temperatures can
generate hallucinations or factually incorrect information. Start with
temperatures lower than 1.0 and increase the temperature for more
creative outputs, as you regenerate the prompts to refine the outputs.

--chat-request-thinking [complex type]

This is a complex type whose value must be valid JSON. The value can
be provided as a string on the command line or passed in as a file
using the file://path/to/file syntax.

The "--generate-param-json-input" option can be used to generate an
example of the JSON which must be provided. We recommend storing this
example in a file, modifying it as needed and then passing it back in
via the file:// syntax.

--chat-request-tools [complex type]

A list of available tools (functions) that the model may suggest
invoking before producing a text response.

This option is a JSON list with items of type CohereToolV2.  For
documentation on CohereToolV2 please see our API reference:
https://docs.oracle.com/en-us/iaas/api/#/en/generativeaiinference/202
31130/datatypes/CohereToolV2. This is a complex type whose value must
be valid JSON. The value can be provided as a string on the command
line or passed in as a file using the file://path/to/file syntax.

The "--generate-param-json-input" option can be used to generate an
example of the JSON which must be provided. We recommend storing this
example in a file, modifying it as needed and then passing it back in
via the file:// syntax.

--chat-request-tools-choice [text]

Used to control whether or not the model will be forced to use a tool
when answering. When REQUIRED is specified, the model will be forced
to use at least one of the user-defined tools, and the tools parameter
must be passed in the request. When NONE is specified, the model will
be forced not to use one of the specified tools, and give a direct
response. If tool_choice isn’t specified, then the model is free to
choose whether to use the specified tools or not. Note:This parameter
is only compatible with models Command-r7b and newer.

Accepted values are:

   NONE, REQUIRED

--chat-request-top-k [integer]

A sampling method in which the model chooses the next token randomly
from the top k most likely tokens. A higher value for k generates more
random output, which makes the output text sound more natural. The
default value for k is 0 which disables this method and considers all
tokens. To set a number for the likely tokens, choose an integer
between 1 and 500.

If also using top p, then the model considers only the top tokens
whose probabilities add up to p percent and ignores the rest of the k
tokens. For example, if k is 20 but only the probabilities of the top
10 add up to the value of p, then only the top 10 tokens are chosen.

--chat-request-top-p [text]

If set to a probability 0.0 < p < 1.0, it ensures that only the most
likely tokens, with total probability mass of p, are considered for
generation at each step.

To eliminate tokens with low likelihood, assign p a minimum percentage
for the next token’s likelihood. For example, when p is set to 0.75,
the model eliminates the bottom 25 percent for the next token. Set to
1.0 to consider all tokens and set to 0 to disable. If both k and p
are enabled, p acts after k.

--from-json [text]

Provide input to this command as a JSON document from a file using the
file://path-to/file syntax.

The "--generate-full-command-json-input" option can be used to
generate a sample json file to be used with this command option. The
key names are pre-populated and match the command option names
(converted to camelCase format, e.g. compartment-id –> compartmentId),
while the values of the keys need to be populated by the user before
using the sample file as an input to this command. For any command
option that accepts multiple values, the value of the key can be a
JSON array.

Options can still be provided on the command line. If an option exists
in both the JSON document and the command line then the command line
specified value will be used.

For examples on usage of this option, please see our “using CLI with
advanced JSON options” link: https://docs.cloud.oracle.com/iaas/Conte
nt/API/SDKDocs/cliusing.htm#AdvancedJSONOptions


Global Parameters
=================

Use "oci --help" for help on global parameters.

"--auth-purpose", "--auth", "--cert-bundle", "--cli-auto-prompt", "--
cli-rc-file", "--config-file", "--connection-timeout", "--debug", "--
defaults-file", "--enable-dual-stack", "--enable-propagation", "--
endpoint", "--generate-full-command-json-input", "--generate-param-
json-input", "--help", "--latest-version", "--max-retries", "--no-
retry", "--opc-client-request-id", "--opc-request-id", "--output", "--
profile", "--proxy", "--query", "--raw-output", "--read-timeout", "--
realm-specific-endpoint", "--region", "--release-info", "--request-
id", "--version", "-?", "-d", "-h", "-i", "-v"


Example using required parameter
================================

Copy and paste the following example into a JSON file, replacing the
example parameters with your own.

       oci generative-ai-inference chat-result chat-cohere-chat-request-v2 --generate-param-json-input chat-request-messages > chat-request-messages.json
       oci generative-ai-inference chat-result chat-cohere-chat-request-v2 --generate-param-json-input serving-mode > serving-mode.json

Copy the following CLI commands into a file named example.sh. Run the
command by typing “bash example.sh” and replacing the example
parameters with your own.

Please note this sample will only work in the POSIX-compliant bash-
like shell. You need to set up the OCI configuration and appropriate
security policies before trying the examples.

       export compartment_id=<substitute-value-of-compartment_id> # https://docs.cloud.oracle.com/en-us/iaas/tools/oci-cli/latest/oci_cli_docs/cmdref/generative-ai-inference/chat-result/chat-cohere-chat-request-v2.html#cmdoption-compartment-id

       oci generative-ai-inference chat-result chat-cohere-chat-request-v2 --chat-request-messages file://chat-request-messages.json --compartment-id $compartment_id --serving-mode file://serving-mode.json
