BBloomFjord
Продукт

Можливості програми · Імовірнісна перевірка фільтром Блума

01

Зіставляйте додані ключі з бітовою картою за колізій, відділяючи позитивну відповідь від певної присутності.

01

Моделі

Налаштуйте OpenAI-сумісний або Anthropic endpoint із базовою URL-адресою та API-ключем, якщо він потрібен. Перевірте з’єднання. Локальний сервер моделі має працювати; віддалені інструменти можуть окремо передавати дані.

02

Проєкт

Виберіть папку й попросіть помічника прочитати потрібні файли перед редагуванням. Визначте мету та межі завдання.

03

Зміни

Переглядайте зміни й результати команд. Перед прийняттям результату виконайте перевірки проєкту; створений код не тестується автоматично.

Імовірнісна перевірка фільтром Блума

● ● ●BloomFjord●
Сценарії · Імовірнісна перевірка фільтром Блума ×
from hashlib import sha256

class Bloom:
    def __init__(self, width):
        if type(width) is not int or not 1 <= width <= 8192:
            raise ValueError("width.range")
        self.width, self.bits = width, 0
    def positions(self, key):
        if not isinstance(key, bytes) or len(key) > 1024:
            raise ValueError("key.bytes")
        digest = sha256(key).digest()
        return [int.from_bytes(digest[i:i+4], "big") % self.width
                for i in (0, 4, 8, 12)]
    def add(self, key):
        for position in self.positions(key):
            self.bits |= 1 << position
    def maybe_contains(self, key):
        return all(self.bits & (1 << p) for p in self.positions(key))
✳Зберігайте байтові ключі до 1024 байтів у фільтрі Блума від одного до 8192 бітів.
✓ ЗміниПеревірте перед застосуванням ↗
Ілюстрація робочого середовища
Робоче середовище з ШІ для коду

Тут починається ваша наступна ідея.

Завантажити для Windows ↗