TL;DR
I just published Tiramisu Framework — an open-source Python framework that provides AI-powered marketing consultancy by synthesizing insights from three complementary perspectives using RAG (Retrieval-Augmented Generation).
pip install tiramisu-framework
🔗 GitHub
🔗 PyPI
📧 frameworktiramisu@gmail.com
The Problem
Traditional marketing consultancy is:
• Expensive ($10k–50k+ per engagement)
• Slow (weeks to months)
• Not scalable (limited expert availability)
• Single-perspective (one consultant = one viewpoint)
Businesses need strategic guidance now, not weeks from now.
⸻
The Solution: Multi-Perspective RAG
What if you could get marketing analysis from three complementary perspectives — strategic fundamentals, digital tactics, and transformation strategy — instantly?
That’s what Tiramisu Framework does.
The Three Perspectives
1. Strategic Marketing Fundamentals → positioning, competitive analysis, core principles
2. Digital Marketing & Social Media → modern tactics, content strategy, engagement
3. Digital Transformation & Innovation → tech integration, business model innovation
Architecture
User Query
↓
Query Expansion (synonyms, related terms)
↓
FAISS Vector Search (semantic retrieval)
↓
Context Assembly (relevant chunks from 3 perspectives)
↓
GPT-4 Synthesis (structured analysis)
↓
Parsed Response (Roots → Trunk → Branches)
Tech Stack
Core: Python 3.11+, FastAPI, LangChain, FAISS (Meta AI), OpenAI GPT-4
Features: CLI (tiramisu init, build-index, run), REST API + conversation management, SQLite, Pydantic schemas
⸻
Code Walkthrough
RAG Initialization
from tiramisu import TiramisuRAG
rag = TiramisuRAG(
faiss_index_path="data/faiss_index",
openai_api_key="your-key"
)
from tiramisu import TiramisuRAG
rag = TiramisuRAG(
faiss_index_path="data/faiss_index",
openai_api_key="your-key"
)
Simple Analysis
query = """
B2B SaaS startup, $50k/month marketing budget.
Need to improve inbound lead generation.
"""
result = rag.analyze(query)
print(result)
Conversational Mode
from tiramisu.core import ConversationManager
manager = ConversationManager()
conv_id = manager.create_conversation(title="Marketing Strategy Discussion")
response = manager.add_message(conversation_id=conv_id, user_message="How do I position against competitors?")
history = manager.get_conversation_history(conv_id)
The “Three Trees” Methodology
🌱 ROOTS (Foundations)
Deep context, root causes, resources/capabilities.
🌳 TRUNK (Core Strategy)
Positioning, value proposition, competitive differentiation.
🍃 BRANCHES (Tactics)
Action plan, KPIs, timeline.
⸻
CLI in Action
Initialize project
tiramisu init my-marketing-ai
Add your own documents
tiramisu add-docs ./marketing-docs/
Build FAISS index
tiramisu build-index
Start API server
tiramisu run
→ http://127.0.0.1:8000
API Endpoints
POST /analyze
POST /conversations
POST /conversations/{id}/messages
GET /conversations/{id}/history
Why Open Source?
Transparency, credibility, community.
Business model: framework free; paid services for expanded knowledge bases, custom integrations, support, white-label.
⸻
Challenges Solved
Query expansion
"improve marketing" →
["enhance marketing","optimize campaigns","increase ROI","boost engagement"]
Multi-perspective synthesis
Retrieve strategic + digital + transformation contexts → synthesize with perspective-aware prompting
Context window management
Smart chunking (800/150) + re-ranking + top-k
Structured output
{ "roots": {...}, "trunk": {...}, "branches": {...},
"perspective_insights": { "strategic": "...", "digital": "...", "transformation": "..." } }
Performance
• Retrieval: <100ms (FAISS)
• Generation: 3–8s (GPT-4)
• Total: <10s per analysis
• Async FastAPI for concurrency
⸻
Installation & Quick Test
pip install tiramisu-framework
python -c "from tiramisu import TiramisuRAG; print('✅ Ready')"
tiramisu init demo && cd demo && tiramisu run
Real-World Example (simplified)
Input
B2B SaaS, low lead quality, $30k/month budget
Output
🌱 ROOTS — misaligned targeting; unclear value prop
🌳 TRUNK — ABM with ICP refinement + personalized nurture
🍃 BRANCHES — 8-week plan; KPIs: Lead→SQL, CAC, velocity
What’s Next
v1.1: more perspective domains, dashboard, multi-language, CRM integrations
v2.0: multi-agent collab, predictive analytics, A/B testing
Lessons Learned
RAG ≠ only vector search • Structured prompts win • Synthesis > concatenation • Conversation state is hard • Good CLI matters • Open source builds trust
⸻
Try It Now
🔗 GitHub
🔗 PyPI
📧 frameworktiramisu@gmail.com
Contributing
PRs welcome! Areas: domain curation, React/Next dashboard, tests/CI, docs, alt embeddings.
Top comments (0)