> ## Documentation Index
> Fetch the complete documentation index at: https://docs.canopylabs.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# CanopyConfig

<RequestExample>
  ```javascript index.js
  const CanopyConfig = {
    authToken:"<your-auth-token>"
    model:"gpt-3.5-turbo",
    voice:"alloy",
  }
  const canopy = new Canopy (CanopyConfig)

  ```
</RequestExample>

The `CanopyConfig` object is used to configure the Canopy SDK.
You can pass it very few parameters and choose default settings or you can pass it many parameters and customize the SDK to your needs.

### Parameters

<ParamField path="authToken" type="string" required="true">
  You must authenticate using an <a href="/api-reference/overview#step-3-get-authentication-token">`authToken`</a>. You can learn how
  to get an `authToken` <a href="/api-reference/overview#step-3-get-authentication-token">here</a>.
</ParamField>

<ParamField path="model" type="string" default="gpt-3.5-turbo">
  Refers to the LLM model you want to use. Learn more <a href="/documentation/llm-concepts#models"> here </a>.
</ParamField>

<ParamField path="voice" type="string" default="alloy">
  The sound of the speech the model outputs. Based on the Open AI TTS engine. Find out more <a href="/documentation/speech-and-visual-concepts#voice"> here </a>.
</ParamField>

<ParamField path="initialSystemMessage" type="string">
  The first message of the conversation is a system message that outlines the bots role and any information it may have. If you want to build agents learn how this should be set up
  <a href="/documentation/Action-Taking-Agents#step-1-initiate-actions-with-a-system-message"> here</a>
</ParamField>

<ParamField path="baseAgentUrl" type="string">
  The URL of the server you are ready to recieve POST requests to for  <a href="/documentation/Action-Taking-Agents"> `agents`</a>. Learn more about how to set up your server
  <a href="/documentation/Action-Taking-Agents/base-agent-url"> here</a>.
</ParamField>

<ParamField path="playbackSpeed" type="string" default="1">
  The speed of the speech relative to a human standard. Learn more <a href="/documentation/speech-and-visual-concepts#playback-speed"> here</a>
</ParamField>

<ParamField path="modelMaxTokens" type="string" default="300">
  The maximum number of tokens your model will generate, in one generation. Maximum is 1000.
</ParamField>
