1. Go to this page and download the library: Download outl1ne/nova-openai library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
outl1ne / nova-openai example snippets
// in app/Providers/NovaServiceProvider.php
public function tools()
{
return [
\Outl1ne\NovaOpenAI\NovaOpenAI::make(),
];
}
$assistant = OpenAI::assistants()->create(
'gpt-3.5-turbo',
'Allan\'s assistant',
'For testing purposes of nova-openai package.',
'You are a kindergarten teacher. When asked a questions, anwser shortly and as a young child could understand.'
);
$assistantModified = OpenAI::assistants()->modify($assistant->id, null, 'Allan\'s assistant!');
$deletedAssistant = OpenAI::assistants()->delete($assistant->id);
// dd($assistant->response->json(), $assistantModified->response->json(), $deletedAssistant->response->json());
$assistant = OpenAI::assistants()->create(
'gpt-3.5-turbo',
'Allan\'s assistant',
'For testing purposes of nova-openai package.',
'You are a kindergarten teacher. When asked a questions, anwser shortly and as a young child could understand.',
[
[
'type' => 'retrieval',
],
],
);
$file = OpenAI::files()->upload(
file_get_contents('files/file.txt'),
'file.txt',
'assistants',
);
$assistantFile = OpenAI::assistants()->files()->create($assistant->id, $file->id);
$assistantFiles = OpenAI::assistants()->files()->list($assistant->id);
$deletedAssistantFile = OpenAI::assistants()->files()->delete($assistant->id, $file->id);
// Cleanup
$deletedAssistant = OpenAI::assistants()->delete($assistant->id);
$deletedFile = OpenAI::files()->delete($file->id);
// dd(
// $assistantFile->response->json(),
// $assistantFiles->response->json(),
// $deletedAssistantFile->response->json(),
// );
$response = OpenAI::chat()->create(
model: 'gpt-3.5-turbo',
messages: Messages::make()->system('You are a helpful assistant.')->user('Hello!'),
)->json();
$response = OpenAI::chat()->create(
model: 'gpt-3.5-turbo',
messages: Messages::make()->system('You are a helpful assistant.')->user('Suggest me tasty fruits as JSON array of fruits.'),
responseFormat: ResponseFormat::make()->json(),
)->json();
$response = OpenAI::chat()->stream(function (string $newChunk, string $message) {
echo $newChunk;
})->create(
model: 'gpt-3.5-turbo',
messages: Messages::make()->system('You are a helpful assistant.')->user('Hello!'),
);
$response = OpenAI::embeddings()->create(
'text-embedding-3-small',
'The food was delicious and the waiter...'
);
// dd($response->embedding);
$response = OpenAI::embeddings()->storing(function ($model) {
$model->output = null;
return $model;
})->create(
'text-embedding-3-small',
'The food was delicious and the waiter...'
);
$assistant = OpenAI::assistants()->create(
'gpt-3.5-turbo',
'Allan',
'nova-openai testimiseks',
'You are a kindergarten teacher. When asked a questions, anwser shortly and as a young child could understand.'
);
$thread = OpenAI::threads()
->create(Messages::make()->user('What is your purpose in one short sentence?'));
$message = OpenAI::threads()->messages()
->create($thread->id, ThreadMessage::user('How does AI work? Explain it in simple terms in one sentence.'));
$response = OpenAI::threads()->run()->execute($thread->id, $assistant->id)->wait()->json();
// cleanup
$deletedThread = OpenAI::threads()->delete($thread->id);
$deletedAssistant = OpenAI::assistants()->delete($assistant->id);
// dd(
// $assistant->response->json(),
// $thread->response->json(),
// $message->response->json(),
// $run->response->json(),
// $messages->response->json(),
// $deletedThread->response->json(),
// $deletedAssistant->response->json(),
// );