Last Updated | | Ratings | | Unique User Downloads | | Download Rankings |
2024-01-02 (9 months ago) | | Not yet rated by the users | | Total: 39 | | All time: 10,912 This week: 47 |
Example
<?php
use Mateodioev\OllamaBot\Cache\UserCache;
use Mateodioev\OllamaBot\Db\MysqlDatabase;
use Mateodioev\OllamaBot\Events\{CancellCompletation, Chat, PrivateTextListener, SetModel, Start, ViewCompletionDetails};
use Mateodioev\OllamaBot\Repository\MysqlUserRepository;
use Mateodioev\TgHandler\{Bot, Log};
use function Mateodioev\OllamaBot\env;
require __DIR__ . '/vendor/autoload.php';
\Dotenv\Dotenv::createImmutable(__DIR__)->load();
// Create logger
$logStreams = new Log\BulkStream(
new Log\TerminalStream(),
// (new Log\PhpNativeStream())->activate(env('LOG_DIR', __DIR__))
);
$logger = new Log\Logger($logStreams);
// Create bot
$bot = new Bot(env('BOT_TOKEN'), $logger);
$logStreams->add(new Log\BotApiStream($bot->getApi(), (int) env('BOT_LOG_CHANNEL_ID')));
$bot->onEvent(Start::get())
->onEvent(Chat::get())
->onEvent(SetModel::get())
->onEvent(CancellCompletation::get())
->onEvent(new PrivateTextListener())
->onEvent(new ViewCompletionDetails());
$db = new MysqlDatabase('mysql:host=' . env('DB_HOST') . ';dbname=' . env('DB_NAME') . ';charset=utf8mb4', env('DB_USER'), env('DB_PASS'));
UserCache::setRepo(new MysqlUserRepository($db));
$bot->longPolling(
(int) env('BOT_POLLING_TIMEOUT', 60),
(bool) env('BOT_POLLING_IGNORE_OLD_UPDATES', false),
(bool) env('BOT_ASYNC', true)
);
|
Details
Ollama telegram bot
This bot helps you to interact with ollama models
https://github.com/Mateodioev/ollama-bot/assets/68271130/6cbec742-994b-4f79-85cf-804ec95663ad
Commands
If you want to generate a completion just send a private message to the bot or if you want to use in a public group use the command /chat
followed by the text of your choice. Other commands:
-
`/setmodel` Change your current model
-
`/start`
Installation
Requirements:
-
\>= PHP 8.2
-
Mysql
-
Access to ollama api
Steps
-
Clone this repository
git clone https://github.com/Mateodioev/ollama-bot.git
cd ollama-bot
-
Install dependencies
composer install --optimize-autoloader --no-interaction --no-dev
-
Setup your database mysql with file `db/main.sql`
-
Create an edit .env file
cp .env.example .env
vim .env # Or use your favorite editor
-
Run the bot
php index.php
Note
> If your default model is diferent to codellama
for example llama2
, edit the file src/Events/Middlewares.php
line 13
See ollama docs in https://github.com/jmorganca/ollama
|
Applications that use this package |
|
No pages of applications that use this class were specified.
If you know an application of this package, send a message to the author to add a link here.