Увійти Реєстрація
Блог Серії
Кар'єра
Вакансії Компанії
Навчання
Документація Співбесіди Тестування Відео
Екосистема
Пакети Ресурси Проєкти
Інше
Події Про нас
Toolkit: каталог готових AI-інструментів для Laravel AI SDK
Новини 14 червня 2026

Toolkit: каталог готових AI-інструментів для Laravel AI SDK

Pushpak Chhajed під егідою Ship Fast Labs представив Toolkit - спільнотну колекцію готових інструментів для Laravel AI SDK. Усі інструменти зберігаються в одному монорепозиторії, але постачаються як окремі Composer-пакети, тож ви встановлюєте лише ті, які потрібні конкретному агенту.

Один пакет на інструмент, без сервіс-провайдерів

Кожен інструмент - це клас, що реалізує інтерфейс Laravel\Ai\Contracts\Tool з методами description(), handle() та schema(). Немає спільного ядра, жодного сервіс-провайдера для реєстрації та жодних конфігураційних файлів для публікації. Ви просто встановлюєте потрібний пакет, створюєте екземпляр інструменту та передаєте його в метод tools() агента:

composer require shipfastlabs/toolkit-calculator
composer require shipfastlabs/toolkit-database
use Shipfastlabs\Toolkit\Calculator\CalculatorTool;
use Shipfastlabs\Toolkit\Database\DatabaseQueryTool;

$tools = [
    new CalculatorTool,
    new DatabaseQueryTool,
];

Кожен інструмент описує своє призначення через description() та свої вхідні параметри через schema(), а модель сама вирішує, коли його викликати. Результати, включно з помилками, повертаються як рядки, тож модель може прочитати помилку та спробувати відновитися замість того, щоб запит просто завершився з помилкою.

Калькулятор без eval()

Інструмент Calculator приймає рядок expression і обчислює його за допомогою рекурсивного парсера замість PHP-функції eval(). Він підтримує оператори +, -, *, /, %, ^ (правоасоціативне піднесення до степеня), дужки, унарні знаки та десяткові числа. Некоректні вхідні дані, ділення або остача від ділення на нуль, а також нескінченні результати повертаються моделі як звичайні рядки замість викидання винятків. Це "чистий" інструмент: без конфігурації, без сервіс-провайдера.

Read-only запити до бази даних

Інструмент Database виконує один SQL-запит SELECT і повертає відповідні рядки як відформатований JSON. Його захисні механізми є ключовими:

  • Дозволяється лише один запит, що починається з SELECT (або WITH … SELECT CTE).
  • INSERT, UPDATE, DELETE, DROP, ALTER та подібні ключові слова відхиляються навіть всередині SELECT-запиту.
  • Запити з роздільниками ; відхиляються.
  • До будь-якого запиту без LIMIT автоматично додається обмеження.

Інструменти з конфігурацією читають налаштування з ключа ai.toolkit.*, який ви додаєте до існуючого файлу config/ai.php Laravel AI SDK - окремий конфігураційний файл публікувати не потрібно:

// config/ai.php
'toolkit' => [
    'database' => [
        'connection' => env('TOOLKIT_DATABASE_CONNECTION'),
        'max_rows' => (int) env('TOOLKIT_DATABASE_MAX_ROWS', 100),
    ],
],

Вказання connection на read-only репліку додає ще один рівень безпеки, а max_rows обмежує кількість рядків у відповіді.

Провайдери веб-пошуку та досліджень

Три пакети обгортають API для пошуку та досліджень, кожен з хелпером, що реєструє весь набір одразу, або окремими класами інструментів на вибір:

  • Exa (toolkit-exa): ExaSearch, ExaFindSimilar, ExaGetContents та ExaAnswer для веб-пошуку на основі embeddings, пошуку схожого контенту, видобування вмісту та відповідей з джерелами та цитатами.
  • Perplexity (toolkit-perplexity): PerplexitySearch для ранжованих джерел та PerplexityAsk для відповідей з цитатами через моделі Sonar з режимами пошуку web, academic та sec.
  • Tavily (toolkit-tavily): TavilySearch, TavilyExtract, TavilyCrawl та TavilyMap для пошуку, видобування контенту, crawling сайтів та створення карти сайту.
use Shipfastlabs\Toolkit\Exa\Exa;

$tools = Exa::all(); // Collection<int, Tool>

Кожен провайдер читає свій API-ключ з конфігурації services Laravel та опціональні налаштування за замовчуванням з ai.toolkit.*. Числові параметри обмежуються допустимими діапазонами, enum-параметри повертаються до безпечних значень за замовчуванням, а помилки API перехоплюються та повертаються як рядки замість викидання винятків.

Бібліотека ендпоінтів JigsawStack

Пакет JigsawStack (toolkit-jigsawstack) надає інструмент для кожного ендпоінту, згруповані в категорії: загальні, переклад, веб, зображення, аудіо та валідація. Це охоплює аналіз тональності, резюмування, embeddings, text-to-SQL, прогнозування часових рядів, переклад тексту та зображень, веб-пошук, AI-скрапінг, HTML-to-image/PDF, VOCR, виявлення об'єктів, speech-to-text та перевірку на NSFW/лайку/орфографію/спам.

Кожен інструмент відповідає одному ендпоінту та повертає сирий JSON-відповідь (відформатований), щоб модель могла прочитати кожне поле. Запити припиняються через 60 секунд, а відсутність API-ключа повертає зрозуміле повідомлення "not configured".

Встановлення

Оберіть потрібні інструменти та встановлюйте їх окремо - наприклад:

composer require shipfastlabs/toolkit-calculator
composer require shipfastlabs/toolkit-tavily

Інструменти для роботи з віддаленими API потребують ключа провайдера в config/services.php (та відповідного запису в .env). Сторінка документації кожного інструменту містить точні ключі конфігурації та значення за замовчуванням.

Переглянути повний каталог можна на офіційному сайті Toolkit, а вихідний код доступний на GitHub.

19

Коментарі

Увійдіть, щоб залишити коментар

Будьте першим, хто залишить коментар!

Читайте також

Laracon US 2026: перший день Рекомендовано
Новини 29 липня 2026

Laracon US 2026: перший день

У Бостоні стартував Laracon US 2026, і запис першого дня вже доступний. Головне з кейноуту: офіційний Laravel LSP для редакторів, Laravel Cloud деплоїть Hono, Flask, Go та Rails, Pest 5 із Tia Engine. Аарон Френсіс приєднався до команди Laravel.

Pest 5: Tia Engine, плагін для AI-агентів і evals для LLM
Новини 29 липня 2026

Pest 5: Tia Engine, плагін для AI-агентів і evals для LLM

На першому дні Laracon US 2026 Нуно Мадуро представив Pest 5. Головне - Tia Engine, що переганяє лише зачеплені змінами тести й скорочує десятихвилинний прогін до кількох секунд, плюс плагіни для AI-агентів, evals, PHPStan і Rector.

Вакансії за темою

IT Delight
9 дн. тому

Symfony Developer (German-speaking)

Розробник PHP Symfony з досвідом 5+ років для розробки та оптимізації веб-додатків на Symfony 6+ або Laravel. Потрібен досвід роботи зі Symfony мінімум 2 роки, знання Git, HTML5, CSS3, JavaScript. Бажаний досвід технічного лідерства та роботи в Scrum-командах. Вимога: німецька мова рівня B2 або вище.

JustMarkets Tech
12 дн. тому

PHP/WordPress Engineer

PHP/WordPress інженер розробляватиме повнофункціональні рішення на базі Roots екосистеми (Bedrock, Acorn, Sage), створюватиме кастомні плагіни та теми, розроблятиме REST API, оптимізуватиме продуктивність. Потрібні 5+ років досвіду в PHP, глибокі знання WordPress, OOP, Git, JS ES6, HTML/SCSS та досвід з ACF, Multisite, WPML.

AQA (Playwright/Cypress)

QA спеціаліст з автоматизацією тестування на Playwright/Cypress для веб-застосунку на Vue 3/Nuxt 3 з реалтайм-функціональністю. Основні обов'язки: написання e2e тестів з нуля, ручне тестування frontend/backend функціоналу, тестування REST API в Postman, роботи з DevTools, регресійне тестування та współпраця з розробниками. Вимоги: досвід в автоматизації, розуміння HTTP, WebSockets, таск-трекерів і оформлення баг-репортів.

Пакети за темою

Bagisto

bagisto/bagisto

Bagisto — це платформа для електронної комерції, побудована на Laravel. Вона надає готове рішення для створення та управління інтернет-магазинами з підтримкою каталогу товарів, замовлень, платежів та клієнтів.

27,769 v2.4.8 12 15

Lang

laravel-lang/lang

Список 126 мов для Laravel Framework, Laravel Jetstream, Laravel Fortify, Laravel Breeze, Laravel Cashier, Laravel Nova, Laravel Spark та Laravel UI.

7,779 15.33.1 8

Відео за темою