Skip to main content

Interactive AI program framework for Python

Project description

AI-Completer

A totally automatic AI to interact with environments.

Now it only supports OpenAI API.

Setup

Note:Please use stable branch if the dev branch is broken

  1. Clone the Repositry
git clone https://github.com/AI-Completer/AI-Completer.git
cd AI-Completer
  1. Modify the config file

You can use either vim or your editor to modify the file config-example.json, and save it to config.json

  1. Run and enjoy yourself

Note: Use Python 3.11+ to run this program.

python3 -m aicompleter talk --ai bingai
# This will start a conversation with bing ai.
python3 -m aicompleter helper --enable-agent --include pythoncode
# This will start a helper with OpenAI API

You can add custom interface to this program to add more function.

Quick Start

The code below will start a talk with gpt, the detailed model varies with your configure, default is gpt-3.5-turbo.

from aicompleter import *
from aicompleter.implements import *
import asyncio

cfg = Config({
    # 'openaichat' is the namespace, you can change to your own namespace
    'openaichat':{
        'openai':{
            'api-key': 'sk-...',                 # Put you OpenAI API key here
            'model': 'gpt-3.5-turbo',            # AI model, default is gpt-3.5-turbo
        }
    }
})
# ChatAI, use openai model gpt-3.5-turbo-0301
chater = ai.openai.Chater(cfg['openaichat'])
# Chat Interface, based on chater -> OpenAI API
chatinterface:ai.ChatInterface = ai.ChatInterface(ai=chater, namespace='openaichat')
# Handler, interacting between interfaces
hand:Handler = Handler(cfg)

async def main():
    # Add Interfaces
    await hand.add_interface(chatinterface)
    # Start a new session
    session:Session = await hand.new_session()
    print("Please start a conversation")
    while True:
        # Get input from console
        word = input(">>> ")
        if word == 'exit':
            break
        # Send a ask command to the chat interface, the ai is asked by the content (text, the question of user)
        print(await session.asend('ask', word))

# Start the loop
asyncio.run(main())

Examples

See examples

Document

Reference: Document

To-do List

We are adding more support to this program.

  • Add Commands Intergation with AI model.
    • Add Commands Support
  • Add memory system
    • Add History
    • Add Memory Analyse
  • Add Extra Interface Package

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aicompleter-0.0.1rc5.tar.gz (104.7 kB view details)

Uploaded Source

Built Distribution

aicompleter-0.0.1rc5-py3-none-any.whl (127.1 kB view details)

Uploaded Python 3

File details

Details for the file aicompleter-0.0.1rc5.tar.gz.

File metadata

  • Download URL: aicompleter-0.0.1rc5.tar.gz
  • Upload date:
  • Size: 104.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.1

File hashes

Hashes for aicompleter-0.0.1rc5.tar.gz
Algorithm Hash digest
SHA256 9782e5a6429e33b0af15838b43b9416d3f8b30c8d1b51fd466aa1a0e30120d19
MD5 fff956e011bfb469ba5e3969fd75da6d
BLAKE2b-256 a400592c3ae2f972ac2f3aef59e25bbfcae79a35501b06fbf9e7abcc0804790a

See more details on using hashes here.

File details

Details for the file aicompleter-0.0.1rc5-py3-none-any.whl.

File metadata

File hashes

Hashes for aicompleter-0.0.1rc5-py3-none-any.whl
Algorithm Hash digest
SHA256 7e67b248cc50d49e32439a7c6f17c37f600638b7f4bfa9be71ce997a42a67288
MD5 3c555a3170ec7aa7214e7073516a6db2
BLAKE2b-256 17c4347268c08207713b081015cf5005c448ce701fd96efb62b5cccb08e9b158

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page