This page shows you how to view a list of assistants, check the status of an assistant, update an assistant, and delete an assistant.

List assistants for a project

You can get the name, status, and metadata for each assistant in your project as in the following example:

# To use the Python SDK, install the plugin:
# pip install --upgrade pinecone pinecone-plugin-assistant

from pinecone import Pinecone
pc = Pinecone(api_key="YOUR_API_KEY")

assistants = pc.assistant.list_assistants()

This operation returns a response like the following:

{
  "assistants": [
    {
      "name": "example-assistant",
      "instructions": "You are ABC company's assistant and are extremely polite.",
      "metadata": {},
      "status": "Initializing",
      "created_on": "2023-11-07T05:31:56Z",
      "updated_on": "2023-11-07T05:31:56Z"
    }
  ]
}

You can use the name value to check the status of an assistant.

You can list assistants using the Pinecone console.

Get the status of an assistant

You can get the status and metadata for your assistant as in the following example:

# To use the Python SDK, install the plugin:
# pip install --upgrade pinecone pinecone-plugin-assistant

from pinecone import Pinecone
pc = Pinecone(api_key="YOUR_API_KEY")

assistant = pc.assistant.describe_assistant(
    assistant_name="example-assistant", 
)

This operation returns a response like the following:

{
  "name": "example-assistant",
  "instructions": "You are ABC company's assistant and are extremely polite.",
  "metadata": {},
  "status": "Initializing",
  "created_on": "2023-11-07T05:31:56Z",
  "updated_on": "2023-11-07T05:31:56Z"
}

The status field has the following possible values:

  • Initializing
  • Failed
  • Ready
  • Terminating

You can check the status of an assistant using the Pinecone console.

Add instructions to an assistant

You can add or update the instructions for an existing assistant. Instructions are a short description or directive for the assistant to apply to all of its responses. For example, you can update the instructions to reflect the assistant’s role or purpose.

For example:

# To use the Python SDK, install the plugin:
# pip install --upgrade pinecone pinecone-plugin-assistant

from pinecone import Pinecone

pc = Pinecone(api_key=YOUR_API_KEY)

assistant = pc.assistant.update_assistant(
    assistant_name="example-assistant", 
    instructions="Use American English for spelling and grammar.",
    region="us" # Region to deploy assistant. Options: "us" (default) or "eu".
)

The example above returns a result like the following:

{
    "name":"example-assistant",
    "instructions":"Use American English for spelling and grammar.",
    "metadata":{"updated":"2024-09-30"},
    "status":"Ready",
    "created_at":"2024-06-14T14:58:06.573004549Z",
    "updated_at":"2024-10-01T19:44:32.813235817Z"
}

You can add or update instructions for an assistant using the Pinecone console.

Delete an assistant

You can delete an assistant as in the following example:

Deleting an assistant also deletes all files uploaded to the assistant.

# To use the Python SDK, install the plugin:
# pip install --upgrade pinecone pinecone-plugin-assistant

from pinecone import Pinecone
pc = Pinecone(api_key="YOUR_API_KEY")

pc.assistant.delete_assistant(
    assistant_name="example-assistant", 
)

You can delete an assistant using the Pinecone console.