Text Generation
Transformers
GGUF
English
phi
knowledge-system
reasoning
expert-verification
multi-domain
zero-hallucination
spatial-memory
knowledge-tiles
phi-4
microsoft
knowledge-tiles-iath
conversational
Eval Results (legacy)
Instructions to use kofdai/nullai-knowledge-system with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use kofdai/nullai-knowledge-system with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="kofdai/nullai-knowledge-system") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("kofdai/nullai-knowledge-system") model = AutoModelForCausalLM.from_pretrained("kofdai/nullai-knowledge-system", device_map="auto") messages = [ {"role": "user", "content": "Who are you?"}, ] inputs = tokenizer.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=40) print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use kofdai/nullai-knowledge-system with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf kofdai/nullai-knowledge-system:Q4_K_M # Run inference directly in the terminal: llama cli -hf kofdai/nullai-knowledge-system:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf kofdai/nullai-knowledge-system:Q4_K_M # Run inference directly in the terminal: llama cli -hf kofdai/nullai-knowledge-system:Q4_K_M
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf kofdai/nullai-knowledge-system:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf kofdai/nullai-knowledge-system:Q4_K_M
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf kofdai/nullai-knowledge-system:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf kofdai/nullai-knowledge-system:Q4_K_M
Use Docker
docker model run hf.co/kofdai/nullai-knowledge-system:Q4_K_M
- LM Studio
- Jan
- vLLM
How to use kofdai/nullai-knowledge-system with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "kofdai/nullai-knowledge-system" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "kofdai/nullai-knowledge-system", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/kofdai/nullai-knowledge-system:Q4_K_M
- SGLang
How to use kofdai/nullai-knowledge-system with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "kofdai/nullai-knowledge-system" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "kofdai/nullai-knowledge-system", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "kofdai/nullai-knowledge-system" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "kofdai/nullai-knowledge-system", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Ollama
How to use kofdai/nullai-knowledge-system with Ollama:
ollama run hf.co/kofdai/nullai-knowledge-system:Q4_K_M
- Unsloth Studio
How to use kofdai/nullai-knowledge-system with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for kofdai/nullai-knowledge-system to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for kofdai/nullai-knowledge-system to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for kofdai/nullai-knowledge-system to start chatting
- Atomic Chat new
- Docker Model Runner
How to use kofdai/nullai-knowledge-system with Docker Model Runner:
docker model run hf.co/kofdai/nullai-knowledge-system:Q4_K_M
- Lemonade
How to use kofdai/nullai-knowledge-system with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull kofdai/nullai-knowledge-system:Q4_K_M
Run and chat with the model
lemonade run user.nullai-knowledge-system-Q4_K_M
List all available models
lemonade list
| import os | |
| import argparse | |
| import json | |
| import asyncio | |
| from iath_decoder import IathDecoder | |
| from iath_encoder import IathEncoder | |
| from domain_manager import DomainManager # DomainManagerをインポート | |
| def consolidate_tiles(input_dir: str, output_file: str, domain_id: str): | |
| """ | |
| 指定されたディレクトリ内のタイルファイルを読み込み、指定されたドメインの | |
| マスター.iathデータベースファイルに統合します。 | |
| """ | |
| print(f"--- データベース統合開始 (ドメイン: {domain_id}) ---") | |
| print(f"入力ディレクトリ: {input_dir}") | |
| print(f"出力ファイル: {output_file}") | |
| # ドメインスキーマからドメインコードを取得 | |
| domain_manager = DomainManager() | |
| schema = domain_manager.get_schema(domain_id) | |
| if not schema: | |
| print(f"エラー: ドメイン '{domain_id}' のスキーマが domain_schemas.json に見つかりません。") | |
| return | |
| domain_code = int(schema.get("domain_code", "0x0"), 16) # 16進数文字列を整数に変換 | |
| if not os.path.isdir(input_dir): | |
| print(f"エラー: 入力ディレクトリ '{input_dir}' が存在しません。") | |
| return | |
| tile_files = [f for f in os.listdir(input_dir) if f.endswith('.iath')] | |
| if not tile_files: | |
| print(f"エラー: 入力ディレクトリ '{input_dir}' に.iathファイルが見つかりません。") | |
| return | |
| print(f"{len(tile_files)}個のタイルファイルを検出しました。") | |
| all_tiles = [] | |
| decoder = IathDecoder() | |
| print("\nステップ1: 個別タイルのデコード中...") | |
| for filename in tile_files: | |
| filepath = os.path.join(input_dir, filename) | |
| try: | |
| with open(filepath, 'rb') as f: | |
| compressed_data = f.read() | |
| tile_dict = decoder.decode_tile(compressed_data) | |
| if tile_dict: | |
| all_tiles.append(tile_dict) | |
| except Exception as e: | |
| print(f"警告: ファイル '{filename}' のデコードに失敗しました。スキップします。エラー: {e}") | |
| print(f" -> {len(all_tiles)}件のタイルを正常にデコードしました。") | |
| if not all_tiles: | |
| print("エラー: デコードできるタイルがありませんでした。処理を中断します。") | |
| return | |
| print("\nステップ2: マスターDBファイルのバッチエンコード中...") | |
| encoder = IathEncoder() | |
| # ドメインコードを渡すように変更 | |
| master_db_content = encoder.encode_batch(all_tiles, domain_code=domain_code) | |
| try: | |
| with open(output_file, 'wb') as f: | |
| f.write(master_db_content) | |
| print(f"\n✓ 成功: 統合データベースを {output_file} ({len(master_db_content)} bytes) に保存しました。") | |
| except IOError as e: | |
| print(f"\n✗ 失敗: ファイルの書き込みに失敗しました - {e}") | |
| print("--- データベース統合完了 ---") | |
| def main(): | |
| parser = argparse.ArgumentParser(description="Ilm-Athens データベース管理ツール") | |
| subparsers = parser.add_subparsers(dest="command", required=True) | |
| parser_consolidate = subparsers.add_parser( | |
| "consolidate", | |
| help="個別の.iathタイルファイルを単一のマスターDBファイルに統合します。" | |
| ) | |
| parser_consolidate.add_argument( | |
| "--input-dir", | |
| default="generated_tiles", | |
| help="入力ディレクトリ (デフォルト: generated_tiles)" | |
| ) | |
| parser_consolidate.add_argument( | |
| "--output-file", | |
| default="ilm_athens_db.iath", | |
| help="出力ファイル名 (デフォルト: ilm_athens_db.iath)" | |
| ) | |
| parser_consolidate.add_argument( | |
| "--domain", | |
| default="medical", | |
| required=True, # ドメイン指定を必須にする | |
| help="対象とする知識ドメイン (例: medical, legal)" | |
| ) | |
| args = parser.parse_args() | |
| if args.command == "consolidate": | |
| consolidate_tiles(args.input_dir, args.output_file, args.domain) | |
| if __name__ == "__main__": | |
| main() | |