OpenAI Assistants made easy
Project description
CyberChipped
Intro
CyberChipped enables building powerful AI apps by providing four abstractions.
These abstractions are the Assistant and 3 helpers: Function, Model, and Classifier.
Building an AI Assistant with multiple tools and helpers is doable in minimal lines of code.
CyberChipped powers the most feature-rich AI Companion - CometHeart!
Install
pip install cyberchipped
Setup
import cyberchipped
cyberchipped.settings.openai.api_key = "YOUR_OPENAI_API_KEY"
Abstractions
Assistant
from cyberchipped.assistants import Assistant
from cyberchipped.assistants.threads import Thread
from cyberchipped.assistants.formatting import pprint_messages
with Assistant as ai:
thread = Thread()
thread.create()
thread.add("Hello World!")
thread.run(ai)
messages = thread.get_messages()
pprint_messages(messages)
# prints
# USER: Hello World!
# ASSISTANT: Yes! Good morning planet Earth!)
AI Function
from cyberchipped import ai_fn
@ai_fn
def echo(text: str) -> str:
"""You return `text`."""
print(echo("Hello World!"))
# prints "Hello World!"
AI Model
from cyberchipped import ai_model
from pydantic import BaseModel, Field
@ai_model
class Planet(BaseModel):
"""Planet Attributes"""
name: str = Field(..., description="The name of the planet.")
planet = Planet("Mars is a great place to visit!")
print(planet.name)
# prints "Mars"
AI Classifier
from cyberchipped import ai_classifier
from enum import Enum
@ai_classifier
class WhichGalaxy(Enum):
"""Picks the name of the galaxy a planet is located in."""
MILKY_WAY = "MILKY WAY"
ANDROMEDA = "ANDROMEDA"
PINWHEEL = "PINWHEEL"
OTHER = "OTHER"
NONE = "NONE"
WhichGalaxy("Earth")
# WhichGalaxy.MILKY_WAY
Source
This is a hard fork of Marvin pre-release
Platform Support
Mac and Linux
Requirements
Python 3.11
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
cyberchipped-0.1.0.tar.gz
(27.1 kB
view hashes)
Built Distribution
Close
Hashes for cyberchipped-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | add7cda9536f36e1231e7cb789d990207c70c0aa4029653ec8c7bd14816888ea |
|
MD5 | 969ff5e7ac62578dca007346f7047a61 |
|
BLAKE2b-256 | 8e816c085dcec46ebe9112a4e06a42ba05c2b7c66bddaf926b1eb52af0bfb69f |