honcho/sdk
Vineeth Voruganti 995a6d0644
[0.0.5] - 03-14-2024 Dialectic Agent (#38)
* 🧪 asyncify tests

*  asyncify client

* Basic Test for Page based pagination

* add sync buildstep and client

* add vscode DX

* Added Testing for generators and updated examples

* feat: example updates

* readme exists now

* Stylistic changes and generic message

* Metamessages with other refactoring - untested

* Work with unit tests

* Fix Examples

* MEME-78 Update Changelogs

* Docstrings to client

* 🧪 autogenerate sync tests

* test one

* add db type

* sync client

* add status badge

* add coverage

* add file

* give perms

* properly output coverage

* split test and coverage

* rename action

* 🧪 autogenerate sync tests (#16)

* Vector Support (#18)

* Scaffold for PGVector support

* Buggy crud with logic skeleton on api

* Crud logic and schema definition for pgvector

* Populate all routes and refactor to name Collection

* vince's progress

* AsyncCollection progress

* Local PGVector Docker Container

* client methods for sdk except document delete and update

* Vector Support Passing All Test Cases

* Docs Updates

---------

Co-authored-by: vintro <vince@plasticlabs.ai>

* Add reverse parameters for paginated routes

* Address dependabot

* Formatting

* initial commit on honcho dspy personas

* working, hit token limit and can't test dspy optimization

* initial version working, need to test optimization

* optimizers working, but appending any example

* ready for user object (tbomk)

* Revert "add test actions and coverage"

* Refactor to add User and App Tables

* User Object passing test cases

* Update examples

* DSPy Todo and documentation updates

* Add is_active filtering

* Add is_active filtering to the generator

* Fix update user metadata

* working, but weird compiler error

* fixed str error in optimizer

* ship

* sentry

* Open Telemetry

* optional logging with environment variables

* add actions again? (#29)

* add postgres

* add openai key

* readd coverage

* desyncify and add detailed coverage

* ⚙️ chore: update start script in VS Code to include poetry install --no-root before running uvicorn (#33)

* Refactored code but need to tweak asyncpg

* Working Async API using Psycopg3

* Update Workflow Connection URI

* Update Workflow Connection URI in coverage test as well

* Skeleton for Dialectic API

* Fixes DEV-217 URL Encoding

* Add Built-in Langchain Utility function

* Sphinx Docs MVP

* Metadata filtering for all fixes dev-261

* Basic Dialectic Endpoint fixes dev-253

* Working Fact Deriver

* 0.0.5 Docs and README updates

* Cloudflare Sphinx

---------

Co-authored-by: hyusap <paulayush@gmail.com>
Co-authored-by: vintro <vince@plasticlabs.ai>
2024-03-14 10:01:08 -07:00
..
.vscode v0.0.2 (#15) 2024-02-08 11:05:56 -08:00
docs [0.0.5] - 03-14-2024 Dialectic Agent (#38) 2024-03-14 10:01:08 -07:00
honcho [0.0.5] - 03-14-2024 Dialectic Agent (#38) 2024-03-14 10:01:08 -07:00
tests [0.0.5] - 03-14-2024 Dialectic Agent (#38) 2024-03-14 10:01:08 -07:00
CHANGELOG.md [0.0.5] - 03-14-2024 Dialectic Agent (#38) 2024-03-14 10:01:08 -07:00
LICENSE location based queries 2024-01-18 02:48:05 -08:00
README.md [0.0.5] - 03-14-2024 Dialectic Agent (#38) 2024-03-14 10:01:08 -07:00
poetry.lock [0.0.5] - 03-14-2024 Dialectic Agent (#38) 2024-03-14 10:01:08 -07:00
pyproject.toml [0.0.5] - 03-14-2024 Dialectic Agent (#38) 2024-03-14 10:01:08 -07:00

README.md

Honcho

A User context management solution for building AI Agents and LLM powered applications.

Read about the motivation of this project here.

Read the full documentation of this project here and find the SDK reference here

Installation

Install honcho:

pip install honcho-ai

or

poetry add honcho-ai

Getting Started

The Honcho SDK exposes a top level client that contains methods for managing the lifecycle of different conversations and sessions in an LLM powered application.

There is a demo server being run at https://demo.honcho.dev that the client uses by default if no other string is provided.

from uuid import uuid4
from honcho import Honcho

app_name = str(uuid4())
honcho = Honcho(app_name=app_name)
honcho.initialize()
user_name = "test"
user = honcho.create_user(user_name)
session = user.create_session()


session.create_message(is_user=True, content="Hello I'm a human")
session.create_message(is_user=False, content="Hello I'm an AI")

The honcho sdk code contains docstrings — see the full sdk on GitHub

See more examples of how to use the SDK on GitHub