OneAIFW (aifw) ist ein von Funstory.ai entwickeltes Open-Source-Tool, das sich mit Datenschutzproblemen bei Large Language Models (LLMs) befassen soll. In aktuellen LLM-Anwendungen müssen Benutzer oft Text mit personenbezogenen Daten oder Geschäftsgeheimnissen zur Verarbeitung an Cloud-Modelle (z. B. ChatGPT, Claude usw.) senden, was ein erhebliches Risiko für den Verlust der Privatsphäre darstellt. oneAIFW löst das Problem, indem es sich an das "Prinzip der Erstheit" hält: Die Daten müssen sicher sein, bevor sie die vom Benutzer kontrollierte Umgebung verlassen. Es fungiert als "Firewall" auf der Zwischenebene und blockiert Anfragen an LLM lokal (oder auf kontrollierten Servern).
Der zentrale Arbeitsmechanismus des Tools ist sehr intuitiv:"Maskieren" und "Wiederherstellen".. Bevor die Anfrage an den externen LLM gesendet wird, identifiziert oneAIFW automatisch die sensiblen Informationen im Text (z. B. Name, Telefonnummer, E-Mail-Adresse usw.) und ersetzt sie durch anonyme Platzhalter; wenn der LLM das Ergebnis zurückgibt, stellt er die Platzhalter wieder genau in die ursprünglichen Daten ein. Dieser Prozess ist für den LLM-Dienstanbieter transparent, der nur die desensibilisierten Daten sehen kann, wodurch das Durchsickern sensibler Daten von der Quelle aus verhindert wird. oneAIFW verwendet hochleistungsfähiges Zig und Rust, um die Kern-Engine zu schreiben, und unterstützt WebAssembly (WASM), was bedeutet, dass es sowohl effizient auf der Serverseite als auch direkt offline im Browser des Benutzers ausgeführt werden kann, wodurch ein echter Zero-Trust-Datenschutz auf der Endseite erreicht wird. Verwirklichung eines echten Zero-Trust-Datenschutzes auf der Endseite.

Funktionsliste
- Datenschutz-Pipeline in zwei Richtungen: Vorausgesetzt
mask(abgeschirmt) undrestore(Wiederherstellung) von zwei zentralen Schnittstellen. Ersetzen Sie empfindliche Entitäten vor dem Senden durch allgemeine Bezeichnungen (z. B.<PERSON>), wodurch das Etikett beim Empfang wieder seinen ursprünglichen Inhalt erhält. - Hochpräzise PII-ErkennungEine integrierte hybride Erkennungsmaschine, die einen leistungsstarken regulären Ausdruck (basierend auf Rust Regex) und ein NER-Modell (Named Entity Recognition) kombiniert, um sensible Informationen wie Namen von Personen, Orten und Kontaktinformationen genau zu erfassen.
- Mehrsprachige und plattformübergreifende Unterstützung::
- KernDie Kernbibliothek ist in Zig und Rust geschrieben und ist extrem leichtgewichtig und leistungsstark.
- Python-Bindungen: Vorausgesetzt
aifw-pyEs ist kompatibel mit dem HuggingFace-Transformatoren-Ökosystem und eignet sich für die Integration von Backend-Diensten. - JavaScript/WASM-Bindung: Vorausgesetzt
aifw-jsIn Kombination mit transformers.js kann der gesamte Desensibilisierungsprozess direkt im Browser ausgeführt werden, ohne dass ein Back-End-Server erforderlich ist.
- Flexibler EinsatzUnterstützung für die Ausführung als eigenständiger HTTP-Dienst (basierend auf FastAPI/Presidio), Integration in bestehenden Code als Bibliothek oder sogar als Browser-Plugin.
- Benutzerdefinierte KonfigurationYAML: Unterstützt die Anpassung von Sperrregeln, Ignorierlisten und des zugrunde liegenden Erkennungsmodells über YAML-Konfigurationsdateien.
- Zero-Trace-VerarbeitungDie gesamte Verarbeitung erfolgt im Speicher, und es werden keine Benutzerdaten dauerhaft gespeichert, so dass ein "burn-after-read" gewährleistet ist.
Hilfe verwenden
OneAIFW ist so konzipiert, dass es "leichtgewichtig" und "portabel" ist. Damit Sie das Tool in der Produktion oder bei der lokalen Entwicklung einsetzen können, wird im Folgenden der gesamte Prozess von der Vorbereitung der Umgebung über die Kompilierung und Installation bis hin zu den eigentlichen Codeaufrufen ausführlich beschrieben.
I. Vorbereitung der Umgebung und Installation
Da der Kern von OneAIFW in der Sprache Zig geschrieben ist und Rust-Komponenten integriert, müssen Sie die entsprechende Kompilierungs-Toolchain vorbereiten.
1. die Installation der Basiswerkzeugkette
Bevor Sie beginnen, vergewissern Sie sich, dass Sie die folgenden Tools auf Ihrem System installiert haben:
- Zig Compiler: die Version muss sein
0.15.2Sie können es von der Zig-Website herunterladen und zur Systemumgebungsvariablen PATH hinzufügen. Sie können es von der Zig-Website herunterladen und zur Systemumgebungsvariablen PATH hinzufügen. Überprüfen Sie den Befehl:zig version. - Rost Werkzeugkette: Empfohlene Installation
stableVersion. Wenn Sie die WASM-Version kompilieren müssen, müssen Sie auch ein Ziel hinzufügen.- Rust installieren:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh - WASM-Unterstützung hinzufügen:
rustup target add wasm32-unknown-unknown
- Rust installieren:
- Node.js & pnpm(Nur für JS-Entwicklung erforderlich): Node.js 18+ und pnpm 9+.
- Python(Nur für die Python-Entwicklung erforderlich): Python 3.10+.
2. die Beschaffung des Quellcodes und die Kompilierung der Kernbibliotheken
Beginnen Sie mit dem Klonen des Repositorys von GitHub:
git clone https://github.com/funstory-ai/aifw.git
cd aifw
Verwenden Sie Zig, um die Kernbibliotheken zu erstellen (sowohl Native- als auch WASM-Produkte):
# 在项目根目录下执行
zig build
# 如果需要运行单元测试以确保环境正常
zig build -Doptimize=Debug test
Dieser Schritt erzeugt die zugrunde liegende aifw Statische Bibliotheken und dynamische Bibliotheken für Aufrufe höherer Sprachen.
II. die Verwendung in einer Python-Umgebung (Back-End-Integration)
Wenn Sie ein Python-Entwickler sind und eine Datenschutz-Firewall in das Backend Ihrer KI-Anwendung integrieren möchten, folgen Sie diesen Schritten.
1. die Installation von Abhängigkeiten
Wechseln Sie in das Verzeichnis Python Bindings und installieren Sie die Abhängigkeiten:
cd libs/aifw-py
# 建议创建虚拟环境
python -m venv .venv
source .venv/bin/activate
pip install -e .
2 Beispiele für Kerncode-Aufrufe
Der folgende Code zeigt, wie man eine Firewall lädt und einen Text mit sensiblen Informationen "desensibilisiert" und "wiederherstellt".
from aifw import AIFirewall
# 初始化防火墙,加载默认配置
fw = AIFirewall()
# 模拟用户输入的敏感文本
user_prompt = "请帮我联系张三,他的电话是 13800138000,我们要讨论关于 ProjectX 的秘密。"
# 步骤1:屏蔽(Mask)
# firewall 会自动识别 PII 并替换,同时返回一个 session 对象用于后续还原
masked_text, session_id = fw.mask(user_prompt)
print(f"发送给LLM的文本: {masked_text}")
# 输出示例: "请帮我联系<PERSON_1>,他的电话是<PHONE_NUMBER_1>,我们要讨论关于<ORG_1>的秘密。"
# 注意:此时真实数据从未离开本地内存
# ... 模拟将 masked_text 发送给 LLM,并获取回复 ...
# 假设 LLM 回复了包含占位符的内容:
llm_response = "好的,我已经记下了<PERSON_1>的电话<PHONE_NUMBER_1>,关于<ORG_1>的事项会保密。"
# 步骤2:还原(Restore)
# 使用之前的 session_id 将占位符还原为真实信息
final_response = fw.restore(llm_response, session_id)
print(f"展示给用户的文本: {final_response}")
# 输出: "好的,我已经记下了张三的电话 13800138000,关于 ProjectX 的事项会保密。"
III. die Verwendung in einer JavaScript/Browser-Umgebung (Frontend-Integration)
Das Besondere an OneAIFW ist, dass es direkt im Browser ausgeführt und desensibilisiert werden kann, ohne Daten an einen Server zu senden.
1. kompilieren des JS SDK
# 安装依赖
pnpm -w install
# 构建 JS 库(会自动处理 WASM 和 模型文件)
pnpm -w --filter @oneaifw/aifw-js build
2. ein Beispiel für einen Front-End-Aufruf
In Ihrem Webprojekt (z.B. Reagieren Sie oder Vue), die Einführung der aifw-js.
import { AIFirewall } from '@oneaifw/aifw-js';
async function protectData() {
// 初始化防火墙(会自动加载 WASM 和 浏览器端的小型 NER 模型)
const firewall = await AIFirewall.create();
const text = "我的邮箱是 alice@example.com";
// 1. Mask
const result = await firewall.mask(text);
console.log(result.masked); // 输出: "我的邮箱是 <EMAIL_1>"
// 模拟 AI 处理过程...
const aiOutput = `已向 <EMAIL_1> 发送邮件`;
// 2. Restore
const final = await firewall.restore(aiOutput, result.session);
console.log(final); // 输出: "已向 alice@example.com 发送邮件"
}
Ausführen der Web-Demo
Eine intuitive Web-Demo-Anwendung wird zur Verfügung gestellt, damit Sie sie direkt ausführen können:
cd apps/webapp
pnpm dev
Öffnen Sie einen Browser, um auf die lokale Adresse der Konsolenausgabe zuzugreifen (normalerweise die http://localhost:5173). In dieser Schnittstelle können Sie einen beliebigen Text mit sensiblen Informationen in das linke Eingabefeld eingeben und auf Verarbeiten klicken, um ihn zu visualisieren:
- Ergebnisse der PII-Analyse: Welche Entitäten werden identifiziert.
- Maskiertes PromptWie der tatsächlich gesendete Text aussieht.
- Wiederhergestellte AntwortDas endgültige restaurierte Aussehen.
V. Erweiterte Konfiguration
Sie können dies tun, indem Sie die aifw.yaml oder setzen Sie Umgebungsvariablen, um das Verhalten anzupassen:
AIFW_MODELS_DIRNER: Gibt den Speicherpfad des NER-Modells an.AIFW_API_KEY_FILEWenn Sie den integrierten LLM-Weiterleitungsdienst verwenden, konfigurieren Sie den API-Schlüssel.- Benutzerdefinierte RegexKonfiguration: Im Abschnitt Konfiguration des Quellcodes können Sie spezifische reguläre Ausdrücke hinzufügen, um bestimmte vertrauliche Formate zu erkennen (z. B. das interne Firmenformat für Projektbezeichnungen).
Wenn Sie diese Schritte befolgen, können Sie OneAIFW in jeden modernen KI-Anwendungsstack integrieren und so einen erweiterten Datenschutz mit "Daten verfügbar, aber nicht sichtbar" ermöglichen.
Anwendungsszenario
- Interne Wissensdatenbank Q&A
Bei der Verwendung von LLM-basierten Wissensdatenbank-Assistenten in der öffentlichen Cloud beziehen Unternehmensmitarbeiter oft Kundenlisten oder Finanzdaten mit ein. Nach dem Einsatz von OneAIFW werden sensible Entitäten in Mitarbeiterfragen automatisch ersetzt, bevor sie an Modelle wie GPT-4 gesendet werden. So wird sichergestellt, dass zentrale Unternehmensdaten nicht aus dem Intranet fließen, ohne die Antwortlogik des Modells zu beeinflussen. - Entwicklung der GDPR/CCPA-Konformität
KI-Anwendungen für den US-amerikanischen und europäischen Markt müssen strenge Datenschutzbestimmungen einhalten. Entwickler können OneAIFW verwenden, um automatisch PII (persönlich identifizierbare Informationen) aus Benutzereingaben zu filtern. Damit entfällt die Notwendigkeit, komplexe Bereinigungsregeln für jede Eingabe manuell zu schreiben, und die gesetzlichen Anforderungen werden schnell erfüllt. - Browser-seitiges Datenschutz-Plugin
Entwicklung von Browser-Erweiterungen, die mit der Web-Version des Nutzers arbeiten ChatGPT vielleicht Claude Wenn die Anfragebox blockiert ist, wird der Inhalt der Anfragebox lokal desensibilisiert und dann wieder in die Webseite eingefügt. Dadurch wird die Privatsphäre der Nutzer auch dann gewahrt, wenn sie die offizielle Webversion des Dienstes nutzen. - Unterstützung bei der medizinischen und rechtlichen Dokumentation
Bei der Arbeit mit medizinischen Unterlagen oder juristischen Verträgen enthalten die Dokumente eine große Anzahl äußerst sensibler Namen und ID-Nummern. Mit OneAIFW kann die KI bei der Bereinigung oder Zusammenfassung von Dokumenten helfen, wobei die Struktur und der Kontext des Dokuments intakt bleiben, ohne dass der Modelldienstleister befürchten muss, dass die Privatsphäre von Patienten oder Kunden gefährdet wird.
QA
- Verlangsamt OneAIFW die Reaktion der KI?
OneAIFW ist hochgradig optimiert und die Kernschicht ist in Zig/Rust geschrieben, um eine extrem schnelle (Mikrosekunden) Verarbeitung zu ermöglichen. Die Hauptlatenzzeit entsteht in der Regel durch die Inferenz des NER-Modells, aber im Falle der Inferenz mit leichtgewichtigen Modellen (wie demneurobert-mini), liegt diese Verzögerung in der Regel in der Größenordnung von Millisekunden, was im Vergleich zur Netzanforderungs- und Generierungszeit des LLM nahezu vernachlässigbar ist. - Welche Arten der Erkennung sensibler Informationen werden unterstützt?
Gängige PII-Typen werden standardmäßig unterstützt, darunter Namen von Personen, Orten und Organisationen (identifiziert durch NER-Modelle) sowie Postfächer, Telefonnummern, Ausweisnummern und Kreditkartennummern (identifiziert durch Regex). Die Benutzer können auch reguläre Ausdrücke anpassen, um die Erkennungstypen zu erweitern. - Was ist, wenn die LLM-Antwort keine Platzhalter enthält?
Wenn der LLM Inhalte mit fehlenden Platzhaltern erzeugt (z. B.<PERSON_1>), wird der Wiederherstellungsschritt die entsprechende Originalnachricht nicht wiederherstellen. OneAIFW optimiert jedoch die Prompt-Worte beim Entwurf des Prompts, um den LLM anzuleiten, die Platzhalter intakt zu lassen. In den meisten Q&A- und Zusammenfassungsszenarien leistet der LLM gute Arbeit bei der Erhaltung dieser Token. - Werden die Daten auf den Servern von OneAIFW gespeichert?
Nein. OneAIFW ist eine reine Werkzeugbibliothek oder ein lokaler Dienst, Funstory.ai betreibt keinen zentralen Abhörserver. Die gesamte Datenverarbeitung erfolgt im Speicher des von Ihnen eingesetzten Servers oder im Speicher des Browsers des Nutzers, und die Daten werden nach Beendigung des Prozesses vernichtet.
































