Building a command line chatbot using cohereAI chat API

Harish GargHarish Garg
2 min read

In this short guide, we will build an AI chatbot that works in your command line program.

This is really how to guide and showcase how powerful the new chat API from cohereAI is.

Let’s dive in

Table of Contents

Requirements and Pre-requisites

  • You need to have Python 3.x or higher installed
  • You should know your way around a command line program like Terminal on Mac or Linux or cmd or PowerShell on Windows
  • You should have your own cohereAI API key. If you don’t have one, you should go ahead and create an account now.

Set up

  1. create a new folder/directory and cd to the directory
  2. set up an environment variable COHEREAI_API_KEY Example on a Linux or Mac machine:

    • export COHEREAI_API_KEY=your-api-key
  3. Install cohere python package

    • pip install cohere==3.1.6

Let’s write the code

Create a new file called app.py in the folder and below code and save it.

# import necessary packages import os import cohere

initialize cohere api client

co = cohere.Client(os.environ.get('COHEREAI_API_KEY'))

initialize a conversation session id

cohere_chat_res_start = co.chat("Hi") conv_session_id = cohere_chat_res_start.session_id

continue existing chat session

def talk(prompt): response = co.chat(prompt, session_id=conv_session_id) return response.reply

take prompt from user and call talk function. run this in loop till user exits

while True: prompt = input("You: ") if prompt == "exit": break print("Bot: ", talk(prompt))

That’s it

Code Explanation

This code imports the necessary packages ‘os’ and ‘cohere’. Then it initializes the cohere API client using an API key stored in the environment variable ‘COHEREAI_API_KEY’.

It then starts a conversation by calling the chat function with the initial message ‘Hi’ and stores the session id. The function ‘talk’ is defined, which takes a prompt as input and uses the cohere API client to continue the existing chat session by passing the prompt and session id as arguments.

In a while loop, the user’s prompt is taken as input, and the ‘talk’ function is called with this prompt as an argument. The loop continues until the user quits the program. The bot’s response is printed after each prompt.

Run the chatbot

Run this command to start the chatbot

python app.py

This is how it would look like when you run it.

command-line-chatbot-using-cohereai-chat-api - harishgarg.com

Note: This tool uses the same session as long as you keep running it. To start fresh, just quit the tool and run again

Show me the code

Here is the code repo on github that contains the example I put together for this guide.

0
Subscribe to my newsletter

Read articles from Harish Garg directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Harish Garg
Harish Garg