Compositional differentiable programming library for neuro-symbolic AI with LLMs
Top 27.3% on sourcepulse
SymbolicAI is a Python library for building applications with Large Language Models (LLMs) by composing operations using a neuro-symbolic approach. It enables seamless integration of classical and differentiable programming, allowing users to break down complex problems into smaller, manageable tasks solvable by LLMs and classical code. The library is designed for developers and researchers working with LLMs who need a flexible framework for complex task decomposition and execution.
How It Works
SymbolicAI leverages a "divide and conquer" strategy, decomposing problems into sub-tasks that can be handled by individual operations. These operations can be classical Python code or LLM-based prompts. The core Symbol
class acts as a base for all operations, allowing for composition and evaluation in the natural language domain, similar to word2vec but operating on text rather than vector embeddings. This approach facilitates human-readable verification of results and enables novel operations like sentence manipulation and fuzzy comparisons.
Quick Start & Requirements
pip install symbolicai
pip install "symbolicai[wolframalpha]"
, pip install "symbolicai[whisper]"
, pip install "symbolicai[selenium]"
, pip install "symbolicai[serpapi]"
, pip install "symbolicai[pinecone]"
, or pip install "symbolicai[all]"
.ffmpeg
.chromedriver-autoinstaller
.symai.config.json
, symsh.config.json
, symserver.config.json
).symconfig
.Highlighted Details
&
for implication).Symbol
objects and various data types (strings, numbers, lists).Maintenance & Community
Licensing & Compatibility
Limitations & Caveats
only_nesy=True
flag is required for logical operators to prevent default string concatenation, which can be a syntactic limitation.1 day ago
1 day