Skip to content

PHP Library client to help cheshire cat communication in your project

Notifications You must be signed in to change notification settings

AlboCode/ccatphp-sdk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

8bbebcc · Nov 19, 2024

History

63 Commits
Jul 8, 2023
Dec 18, 2023
Nov 19, 2024
Dec 18, 2023
Dec 18, 2023
Dec 18, 2023
Dec 18, 2023
Nov 4, 2023
Feb 2, 2024
Feb 2, 2024
Dec 19, 2023
Dec 18, 2023

Repository files navigation

ccatphp-sdk


CCat PHP SDK (Cheshire cat PHP SDK) is a library to help the implementation of Cheshire Cat on a PHP Project

Installation

To install CCatPHP-SDK you can run this command:

composer require albocode/ccatphp-sdk

Usage

Initialization and usage:

use Albocode\CcatphpSdk\CCatClient;
use Albocode\CcatphpSdk\Clients\HttpClient;
use Albocode\CcatphpSdk\Clients\WSClient;


$cCatClient = new CCatClient(
new WSClient('cheshire_cat_core', 1865, null),
new HttpClient('cheshire_cat_core', 1865, null)
);

Send a message to the websocket:

$notificationClosure = function (string $message) {
 // handle websocket notification, like chat token stream
}

// result is the result of the message
$result = $cCatClient->sendMessage(
new Message("Hello world!", 'user', []),  // message body
$notificationClosure // websocket notification closure handle
);

Load data to the rabbit hole:

//file
$promise = $this->client->rabbitHole($uploadedFile->getPathname(), null, null);
$promise->wait();

//url
$promise = $this->client->rabbitHoleWeb($url, null,null);
$promise->wait();

Memory management utilities:

$this->client->getMemoryCollection(); // get number of vectors in the working memory
$this->client->getMemoryRecall("HELLO"); // recall memories by text

//delete memory points by metadata, like this example delete by source
$this->client->deleteDeclarativeMemoryByMetadata(["source" => $url]);