Simple PHP LLM with SQLite and Token Probability Matching
A lightweight PHP demo of a rule-based language model using SQLite and probabilistic token scoring. Learn how to simulate AI-style responses with native PHP.
edit_note
PHP Code Editor
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
// PHP LLM with SQLite + probabilistic scoring based on token frequency
$db = new PDO("sqlite::memory:");
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->exec("CREATE TABLE responses (id INTEGER PRIMARY KEY, text TEXT)");
$db->exec("CREATE TABLE tokens (
response_id INTEGER,
token TEXT,
count INTEGER DEFAULT 1,
UNIQUE(response_id, token)
)");
function tokenize(string $text): array {
return array_filter(preg_split('/[^a-z0-9]+/i', strtolower($text)));
}
// Learning phase: ingest responses and index tokens
function learn(PDO $db, string $text) {
$stmt = $db->prepare("INSERT INTO responses (text) VALUES (?)");
$stmt->execute([$text]);
$id = $db->lastInsertId();
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
settingsPHP Version
panorama_fish_eye
7.2
panorama_fish_eye
7.4
panorama_fish_eye
8.0
panorama_fish_eye
8.1
task_alt
8.2
panorama_fish_eye
8.3
panorama_fish_eye
8.4
panorama_fish_eye
8.5
terminal
Execution Result
play_circle_outline
Ready to execute
Click the "Run Script" button to see the output here
article
Description
PHP LLM with SQLite Token Scoring
This example demonstrates how to build a lightweight rule-based language model in pure PHP, using:
- SQLite as a local memory store
- Token frequency matching to simulate probabilistic scoring
- Natural language prompts to return the most relevant response
It’s a fully self-contained script, ideal for demos, education, or sandbox experiments.
What It Does
- Tokenizes training sentences (responses)
- Stores token frequency per response in a SQLite table
- On user input, calculates a match score based on overlapping tokens
- Returns the most relevant response with a confidence score
Comments
No comments yet
Be the first to share your thoughts!