This is an unofficial PHP client for Pi chatbot (from Inflection AI). It doesn't require authentication.
composer require maximerenou/pi-chat
Run examples/chat.php
to test it.
use MaximeRenou\PiChat\Client as PiChat;
use MaximeRenou\PiChat\Prompt;
$chatbot = new PiChat();
$conversation = $chatbot->createConversation();
// $answer - full answer
$answer = $conversation->ask(new Prompt("Hello World"));
Real-time / progressive answer
Pi tends to send the whole message in one shot so this can be useless.
You may pass a function as second argument to get real-time progression:
// $current_answer - incomplete answer
// $tokens - last tokens received
$final_answer = $conversation->ask($prompt, function ($current_answer, $tokens) {
echo $tokens;
});
Resume a conversation
If you want to resume a previous conversation, you can retrieve its identifiers:
// Get current identifiers
$identifiers = $conversation->getIdentifiers();
// ...
// Resume conversation with $identifiers parameter
$conversation = $chatbot->resumeConversation($identifiers);
Error handling
The code throws exceptions when it receives an error from Pi. You can therefore use a try/catch block to handle errors.
This code is for educational purpose only. Using Pi outside heypi.com may violate Inflection AI terms.