Skip to content

dcarpintero/create-cohere-connector

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Create Cohere Connector PRs Welcome PyPi

Generates a custom Cohere Connector with one command. Cohere Connectors enable to combine Cohere's large language models (LLMs), which power the Chat API, with up-to-date factual information. They enhance Cohere's retrieval augmented generation (RAG) offering, and can respond to user questions and prompts with substantive, grounded generations that contain citations to external public or private knowledge bases.

Note that this is an experimental project. If something doesn’t work, please file an issue.

You might also refer to the official Cohere repo for Connectors: https://github.com/cohere-ai/quick-start-connectors

🧮 What is included?

Your environment will have everything you need to quickly prototype and deploy a custom Cohere Connector:

  • API service implementing the required search endpoint using FastAPI (support for Flask is planned).
  • Bearer Token Authentication using the Authorization header in HTTP requests.
  • Pydantic models for data validation and serialization.
  • Client class to retrieve data from a custom data source.
  • Deploy script to register your connector with Cohere.

🚀 Quickstart

  1. Install create-cohere-connector package:

You might install this package globall:

poetry self add poetry-scaffold

or within a virtual environment:

# Windows
py -m venv .venv
.venv\scripts\activate
# macOS/Linux
python3 -m venv .venv
source .venv/bin/activate
pip3 install create-cohere-connector
  1. Bootstrap your project:
poetry run create-cohere-connector

This will prompt for a project name:

Project name [myconnector]: hello-connector
Api framework [FastAPI]: FastAPI
Authentication [Bearer]: Bearer
Caching [None]: None

generate the initial project structure:

myconnector
├── README.md
├── deploy.py
├── Dockerfile
├── pyproject.toml
├── poetry.lock
├── .gitignore
└── provider
    ├── __init__.py
    ├── app.py
    ├── config.py
    ├── client.py
    ├── provider.py
    ├── exceptions.py
    └── datamodels.py

and install dependencies:

✅ Project created successfully!

  1. Set environment variables

You might rename .env_template to .env, and complete it.

  1. Span a shell within the virtual environment
poetry shell
  1. Install dependencies
poetry config virtualenvs.in-project true
poetry install --no-root
  1. Start API service
poetry run uvicorn app:app --app-dir provider --port 5000 --reload
  1. Deploy Cohere Connector
python deploy.py

👩‍💻 Contributions

If you would like to contribute, here are some features that we are planning to add:

  • Improve Poetry virtual environment creation
  • Flask support
  • Semantic caching
  • OAuth 2.0
  • Data models scaffolding

⚖️ License

Create Cohere Connector is open source software licensed as Apache 2.0.