Cedric7-Thinking · Live · v13.0.0

Génère ton code.
Ou copie le nôtre.

L'IA génère du code candy adapté à ta demande en direct. Ou explore les 30+ exemples classés par domaine.

Cedric7-Thinking Live
Décris ce que tu veux construire.
L'IA analyse ta demande et génère le code candy complet correspondant — prêt à copier-coller et exécuter.
chatbot service client FR tuteur de mathématiques résumeur de texte médical fiches de révision automatiques assistant juridique interactif traducteur multilingue batch générateur de business plan bot Telegram IA
code_genere.py

Filtrer par domaine
45 exemples · clique pour déplier
🧮
Tuteur de mathématiques adaptatif
Session multi-tours, niveau beginner, encouragements. Mémorise le contexte de bout en bout.
Education
tuteur_math.py
from candy import cfg, Tutor

cfg.eleve.lang      = "FR"
cfg.eleve.style     = "detailed"
cfg.eleve.expertise = "beginner"
cfg.eleve.tone      = "encouraging"

session = Tutor.chat(profile="eleve")
print("🧮 Tuteur maths — 'quitter' pour arrêter\n")
while True:
    q = input("Toi : ")
    if q.lower() == "quitter": break
    print(f"\nTuteur : {session.say(q)}\n")
session.save("session_math.json")
📝
Générateur de fiches de révision
Transforme un cours en fiche synthétique : points clés, définitions, questions & réponses.
Education
fiches_revision.py
from candy import cfg, Education

cfg.p.lang          = "FR"
cfg.p.style         = "detailed"
cfg.p.output_format = "markdown"
cfg.p.max_tokens    = 2000

cours = open("cours.txt", encoding="utf-8").read()
fiche = Education.use("p").ask(
    "Fiche de révision complète. Points clés, définitions, 5 Q&R.\n\n" + cours
)
open("fiche.md", "w", encoding="utf-8").write(fiche)
print("✅ fiche.md généré")
🎯
Quiz QCM automatique
Génère des QCM en JSON sur n'importe quel sujet, les pose à l'élève et corrige les réponses.
Education
quiz_auto.py
from candy import cfg, Education
import json

cfg.q.lang = "FR"; cfg.q.max_tokens = 1500

raw = Education.use("q").ask(
    "5 QCM sur la Révolution française. JSON : liste d'objets "
    "avec question, options A-D, reponse_correcte, explication."
)
quiz = json.loads(raw); score = 0
for i, q in enumerate(quiz, 1):
    print(f"\nQ{i}. {q['question']}")
    [print(f"  {o}") for o in q['options']]
    r = input("Réponse A/B/C/D : ").upper()
    if r == q['reponse_correcte']:
        print("✅ Correct !"); score += 1
    else: print(f"❌ {q['explication']}")
print(f"\nScore : {score}/5")
🌐
Cours de langue interactif
Professeur IA patient qui enseigne n'importe quelle langue depuis zéro, avec exercices et corrections.
Education
cours_langue.py
from candy import cfg, Language

cfg.lang.lang      = "FR"
cfg.lang.tone      = "encouraging"
cfg.lang.expertise = "beginner"
cfg.lang.max_tokens = 800

session = Language.chat(profile="lang")
init = session.say(
    "Tu es mon prof d'espagnol. Je suis débutant absolu. "
    "Leçon 1 : les salutations. Explique, donne des exemples, fais-moi pratiquer."
)
print(f"👨‍🏫 Cours d'espagnol\n{init}\n")
while True:
    r = input("Moi : ")
    if r.lower() == "exit": break
    print(f"\nProf : {session.say(r)}\n")
🩺
Assistant santé — questions générales
Répond aux questions médicales générales avec redirection systématique vers un médecin.
Sante
assistant_sante.py
from candy import cfg, Medicine

cfg.sante.lang       = "FR"
cfg.sante.tone       = "empathetic"
cfg.sante.max_tokens = 1200
cfg.sante.context    = (
    "Informations médicales générales uniquement. "
    "Toujours terminer par : consulte un médecin pour un diagnostic."
)
session = Medicine.chat(profile="sante")
print("🏥 Assistant santé\n")
while True:
    q = input("Question : ")
    if q.lower() == "exit": break
    print(f"\n{session.say(q)}\n{'─'*50}")
💊
Simplificateur de notices médicales
Traduit une notice de médicament en langage clair : utilité, posologie, effets secondaires.
Sante
notice_simple.py
from candy import cfg, Medicine

cfg.med.lang      = "FR"
cfg.med.expertise = "beginner"
cfg.med.max_tokens = 1000

notice = open("notice.txt", encoding="utf-8").read()
resume = Medicine.use("med").ask(
    "Simplifie pour un patient non médecin.\n"
    "1) À quoi ça sert  2) Comment le prendre\n"
    "3) Effets indésirables  4) Quand appeler un médecin\n\n"
    + notice
)
print(resume)
open("notice_simple.txt", "w").write(resume)
🧠
Soutien psychologique bienveillant
Écoute active, gestion du stress, CBT simplifiée. Redirige vers un professionnel si nécessaire.
Sante
soutien_psy.py
from candy import cfg, Psychology

cfg.psy.lang       = "FR"
cfg.psy.tone       = "empathetic"
cfg.psy.max_tokens = 1000
cfg.psy.context    = (
    "Écoute active, questions ouvertes, bienveillance. "
    "Situation sérieuse → oriente vers un professionnel. Jamais de diagnostic."
)
session = Psychology.chat(profile="psy")
print("💙 Espace de soutien\n")
while True:
    m = input("Toi : ")
    if m.lower() == "exit": break
    print(f"\n💙 {session.say(m)}\n")
🤖
Chatbot service client
Assistant multi-tours avec contexte métier personnalisable. Session avec mémoire complète.
Chatbot
chatbot_client.py
from candy import cfg, Full

cfg.bot.lang    = "FR"
cfg.bot.style   = "professional"
cfg.bot.tone    = "friendly"
cfg.bot.context = (
    "Tu es l'assistant de CandyShop (vêtements sport). "
    "Livraison 3-5j, retours gratuits 30j, SAV : sav@candyshop.fr"
)
session = Full.chat(profile="bot")
print("🛍️ Assistant CandyShop\n")
while True:
    m = input("Client : ")
    if m.lower() == "exit": break
    print(f"\nAssistant : {session.say(m)}\n")
🌐
API Flask + streaming SSE
Backend REST complet avec streaming token par token. Sessions par utilisateur. Prêt pour la prod.
Chatbot
chatbot_flask.py
from flask import Flask, request, jsonify, Response
from candy import cfg, Full

app = Flask(__name__)
cfg.web.lang = "FR"; cfg.web.style = "detailed"
sessions = {}

@app.route("/chat", methods=["POST"])
def chat():
    d = request.get_json()
    sid = d.get("session_id", "default")
    if sid not in sessions:
        sessions[sid] = Full.chat(profile="web")
    return jsonify({"reply": sessions[sid].say(d["message"])})

@app.route("/stream", methods=["POST"])
def stream():
    msg = request.get_json()["message"]
    return Response(
        (f"data: {t}\n\n" for t in Full.use("web").stream(msg)),
        mimetype="text/event-stream")

if __name__ == "__main__": app.run(debug=True)
📞
Bot Telegram
Chatbot IA dans Telegram. Session indépendante par utilisateur avec mémoire de conversation.
Chatbot
telegram_bot.py
from telegram.ext import ApplicationBuilder, CommandHandler, MessageHandler, filters
from candy import cfg, Full

cfg.tg.lang = "FR"; cfg.tg.style = "casual"
sessions = {}

async def start(u, c):
    sessions[u.effective_user.id] = Full.chat(profile="tg")
    await u.message.reply_text("👋 Pose-moi n'importe quelle question !")

async def reply(u, c):
    uid = u.effective_user.id
    if uid not in sessions: sessions[uid] = Full.chat(profile="tg")
    await u.message.reply_text(sessions[uid].say(u.message.text))

app = ApplicationBuilder().token("TON_TOKEN").build()
app.add_handler(CommandHandler("start", start))
app.add_handler(MessageHandler(filters.TEXT, reply))
app.run_polling()
💹
Analyseur de dépenses bancaires
Analyse un CSV de relevés : catégories, tendances, postes excessifs, 3 conseils d'économies.
Finance
analyse_depenses.py
from candy import cfg, Finance

cfg.fin.lang = "FR"; cfg.fin.style = "detailed"
cfg.fin.max_tokens = 1800

donnees = open("releves.csv").read()
rapport = Finance.use("fin").ask(
    "Analyse ces relevés bancaires CSV.\n"
    "- Catégories et montants\n- Tendances et postes excessifs\n"
    "- 3 conseils concrets pour économiser\n\n" + donnees
)
print(rapport)
open("rapport_finances.md", "w").write(rapport)
📈
Générateur de business plan
Business plan complet en 3 sections (résumé exécutif, marché, projections financières).
Finance
business_plan.py
from candy import cfg, Entrepreneur, Finance, Marketing

cfg.bp.lang = "FR"; cfg.bp.max_tokens = 3000
projet = "App livraison repas sains, France, 25-40 ans"

sections = [
    (Entrepreneur, "Résumé exécutif, modèle éco, avantage compétitif"),
    (Marketing,   "Analyse marché, cibles, go-to-market"),
    (Finance,     "Projections 3 ans, coûts, revenus estimés"),
]
bp = "# Business Plan\n\n"
for mod, sujet in sections:
    bp += mod.use("bp").ask(f"Projet : {projet}\n{sujet}") + "\n\n---\n\n"
open("business_plan.md", "w").write(bp)
print("✅ business_plan.md")
📅
Planificateur de semaine
Planning optimisé heure par heure à partir d'une liste de tâches et de contraintes horaires.
Productivite
planificateur.py
from candy import cfg, Planner

cfg.plan.lang = "FR"; cfg.plan.style = "detailed"
cfg.plan.max_tokens = 2000

taches = [
    "Rapport Q1 (3h, urgent)", "Réunion mardi 10h (1h)",
    "Réviser présentation (2h)", "Formation Python (4h)",
]
planning = Planner.use("plan").ask(
    "Contraintes : 9h-18h, pause 12h-13h30, sport lundi/jeudi.\n"
    f"Tâches : {chr(10).join(taches)}\n\n"
    "Planning semaine heure par heure avec tips de focus."
)
print(planning)
📧
Rédacteur d'emails en batch
5 emails professionnels générés en parallèle depuis des descriptions courtes.
Productivite
emails_batch.py
from candy import cfg, Writing

cfg.mail.lang = "FR"; cfg.mail.style = "professional"
cfg.mail.max_tokens = 400

demandes = [
    "Relance facture impayée 30 jours",
    "Confirmation rdv partenaire jeudi 14h",
    "Remerciement après entretien",
    "Demande de devis prestataire logistique",
    "Excuses retard livraison + compensation",
]
emails = Writing.use("mail").batch(
    [f"Email pro : {d}. Objet + corps." for d in demandes]
)
for dem, email in zip(demandes, emails):
    print(f"\n📧 {dem}\n{email}\n{'─'*40}")
🔄
Veille automatique quotidienne
Résume une liste d'articles en rapport de veille structuré, automatisable en cron.
Productivite
veille_auto.py
from candy import cfg, Summarizer
from datetime import date

cfg.veille.lang = "FR"; cfg.veille.style = "concise"
cfg.veille.max_tokens = 500

articles = [
    ("IA & Médecine",     "contenu article 1..."),
    ("Cybersécurité 2026", "contenu article 2..."),
    ("Startup funding",    "contenu article 3..."),
]
rapport = f"# Veille — {date.today()}\n\n"
for titre, contenu in articles:
    resume = Summarizer.use("veille").ask(
        f"Sujet: {titre}\n3 bullet points clés:\n{contenu}"
    )
    rapport += f"## {titre}\n{resume}\n\n"
open(f"veille_{date.today()}.md", "w").write(rapport)
print("📰 Rapport généré ✓")
🔍
Reviewer de code automatique
Détecte bugs, anti-patterns, violations PEP8. Génère une version refactorisée propre.
Code
code_review.py
from candy import cfg, Reviewer, Debugger
import sys

cfg.rev.lang = "FR"; cfg.rev.expertise = "expert"
cfg.rev.max_tokens = 2000

code = open(sys.argv[1]).read()
review = Reviewer.use("rev").ask(
    "Review ce code. Chaque problème : localisation, explication, correction.\n\n"
    f"```python\n{code}\n```"
)
print(review)
refacto = Debugger.use("rev").ask(
    f"Version refactorisée :\n```python\n{code}\n```"
)
open(f"refacto_{sys.argv[1]}", "w").write(refacto)
🛡️
Audit de sécurité
Cherche injections SQL/XSS, secrets hardcodés, failles OWASP. Sévérité par problème.
Code
audit_secu.py
from candy import cfg, Security

cfg.sec.lang = "FR"; cfg.sec.expertise = "expert"
cfg.sec.max_tokens = 2500

code = open("app.py").read()
audit = Security.use("sec").ask(
    "Audit sécurité complet. Injections SQL/XSS, secrets hardcodés, auth faible.\n"
    "Chaque problème : sévérité CRITIQUE/ÉLEVÉ/MOYEN/FAIBLE, ligne, correction.\n\n"
    f"```python\n{code}\n```"
)
print(audit)
open("audit.md", "w").write(audit)
📚
Générateur de documentation
Génère les docstrings, README et exemples d'utilisation de tous les fichiers .py d'un projet.
Code
gen_docs.py
from candy import cfg, Coding
import os

cfg.doc.lang = "FR"; cfg.doc.style = "technical"
cfg.doc.max_tokens = 3000

for f in os.listdir("."):
    if not f.endswith(".py"): continue
    print(f"📝 {f}...")
    code = open(f).read()
    doc = Coding.use("doc").ask(
        "Génère la doc complète : docstrings Google-style, README, "
        f"exemples d'utilisation.\n\n```python\n{code}\n```"
    )
    open(f"docs_{f}.md", "w").write(doc)
    print(f"  → docs_{f}.md ✓")
🏗️
Générateur de fixtures JSON
Génère des données de test réalistes en JSON pour une base de données ou une API.
Code
gen_fixtures.py
from candy import cfg, Coding
import json

cfg.fix.lang = "FR"; cfg.fix.max_tokens = 2000

schema = {
    "table": "utilisateurs",
    "champs": ["id", "nom", "email", "age", "ville", "role"],
    "nb_lignes": 20
}
raw = Coding.use("fix").ask(
    f"Génère {schema['nb_lignes']} lignes de données réalistes pour : {schema}. "
    "JSON valide uniquement, aucun commentaire."
)
donnees = json.loads(raw)
open("fixtures.json", "w").write(json.dumps(donnees, ensure_ascii=False, indent=2))
print(f"✅ {len(donnees)} fixtures générées")
📖
Générateur de livre complet
Plan → 10 chapitres générés un par un. Résultat en Markdown prêt à publier.
Ecriture
generateur_livre.py
from candy import cfg, Writing, Planner

cfg.livre.lang = "FR"; cfg.livre.max_tokens = 4096
cfg.livre.style = "detailed"

sujet = "L'intelligence artificielle dans la médecine"
plan = Planner.use("livre").ask(f"Plan 10 chapitres pour : {sujet}. Liste numérotée.")
chapitres = [l.strip() for l in plan.split("\n") if l.strip() and l.strip()[0].isdigit()]

texte = f"# {sujet}\n\n"
for i, t in enumerate(chapitres[:10], 1):
    print(f"✍️ Ch.{i}...")
    texte += f"## Ch.{i} — {t}\n\n"
    texte += Writing.use("livre").ask(f"Chapitre {i} : {t}. 500 mots, style fluide.")
    texte += "\n\n---\n\n"
open("livre.md", "w").write(texte); print("📚 livre.md")
🌍
Traducteur multilingue batch
Traduit un texte vers 8 langues en un seul appel batch parallèle.
Ecriture
traducteur_multi.py
from candy import cfg, Translator

cfg.tr.max_tokens = 300
texte = "Bienvenue sur notre plateforme. Nous sommes ravis de vous accueillir."
langues = ["EN", "ES", "DE", "IT", "PT", "JA", "ZH", "AR"]

traductions = Translator.use("tr").batch([
    f"Traduis en {l}, renvoie UNIQUEMENT la traduction : {texte}"
    for l in langues
])
for l, t in zip(langues, traductions):
    print(f"[{l}] {t}")
📣
Contenus marketing multi-plateformes
Génère posts Instagram, LinkedIn et Twitter/X adaptés à chaque ton et format.
Ecriture
contenus_marketing.py
from candy import cfg, Marketing

cfg.mkt.lang = "FR"; cfg.mkt.tone = "enthusiastic"
cfg.mkt.max_tokens = 400

produit = "Montre connectée sportive waterproof, autonomie 14j, 149€"

plateformes = {
    "Instagram": "Post accrocheur, emojis, 150 mots, 5 hashtags",
    "LinkedIn":  "Post professionnel B2B, 200 mots, ton sérieux",
    "Twitter/X": "Tweet max 280 caractères avec call-to-action",
}
for plateforme, style in plateformes.items():
    post = Marketing.use("mkt").ask(f"Produit : {produit}\nPost {plateforme} : {style}")
    print(f"\n📱 {plateforme}\n{'='*40}\n{post}")
📊
Analyste de données CSV
Stats pandas envoyées à l'IA : tendances, anomalies, corrélations et code de visualisation.
Data
analyse_csv.py
from candy import cfg, Analytic
import pandas as pd

cfg.data.lang = "FR"; cfg.data.expertise = "expert"
cfg.data.max_tokens = 2000

df = pd.read_csv("donnees.csv")
analyse = Analytic.use("data").ask(
    f"Colonnes : {list(df.columns)} | {len(df)} lignes\n"
    f"Aperçu :\n{df.head(5).to_string()}\n"
    f"Stats :\n{df.describe().to_string()}\n\n"
    "Tendances, anomalies, corrélations. 3 visualisations matplotlib."
)
print(analyse)
🔎
Résumeur de documents en batch
Résume tous les .txt d'un dossier en une passe : idée principale, points clés, conclusion.
Data
resumeur_batch.py
from candy import cfg, Summarizer
import os

cfg.sum.lang = "FR"; cfg.sum.style = "concise"
cfg.sum.max_tokens = 500

for doc in [f for f in os.listdir("docs/") if f.endswith(".txt")]:
    contenu = open(f"docs/{doc}", encoding="utf-8").read()[:6000]
    resume = Summarizer.use("sum").ask(
        "Résume : 1) Idée principale 2) Points clés (5 max) 3) Conclusion\n\n" + contenu
    )
    print(f"\n📄 {doc}\n{resume}\n{'─'*40}")
🌊
Streaming temps réel
Affiche la réponse token par token dans le terminal, comme ChatGPT. Deux façons de l'utiliser.
Data
streaming.py
from candy import cfg, Writing

cfg.A.lang = "FR"; cfg.A.style = "casual"

# Méthode 1 — stream_print() affiche directement
Writing.use("A").stream_print("Raconte une courte histoire de pirate")

# Méthode 2 — itérer token par token
print("\n--- Méthode 2 ---\n")
for token in Writing.use("A").stream("Décris un coucher de soleil"):
    print(token, end="", flush=True)
⚖️
Analyste de contrats juridiques
Identifie clauses abusives, risques, points de négociation. Mode dialogue interactif.
Business
analyse_contrat.py
from candy import cfg, Law

cfg.jur.lang = "FR"; cfg.jur.expertise = "expert"
cfg.jur.max_tokens = 2500

contrat = open("contrat.txt", encoding="utf-8").read()
session = Law.chat(profile="jur")
analyse = session.say(
    "Analyse : clauses abusives, obligations de chaque partie, "
    f"risques, points de négociation.\n\n{contrat}"
)
print("⚖️\n" + analyse)
while True:
    q = input("\nQuestion ('exit') : ")
    if q.lower() == "exit": break
    print("\n" + session.say(q))
🚀
Générateur de pitch deck
Contenu structuré des 8 slides d'un pitch investisseur : percutant, concis, prêt à présenter.
Business
pitch_deck.py
from candy import cfg, Entrepreneur

cfg.pitch.lang = "FR"; cfg.pitch.max_tokens = 2500
startup = "GreenRoute — covoiturage éco longue distance, cherche 500k€ seed"

slides = ["Problème & Solution", "Marché & Opportunité",
          "Produit & Demo", "Modèle économique",
          "Traction & Métriques", "Équipe",
          "Roadmap", "Financement & Use of funds"]
deck = "# Pitch Deck\n\n"
for s in slides:
    deck += Entrepreneur.use("pitch").ask(
        f"Startup : {startup}\nSlide '{s}' : contenu percutant, concis."
    ) + "\n\n"
open("pitch.md", "w").write(deck); print("🚀 pitch.md")
📊
Rapport de performance mensuel
Génère un rapport exécutif structuré depuis des métriques brutes avec tableau ASCII.
Business
rapport_mensuel.py
from candy import cfg, Business

cfg.rpt.lang = "FR"; cfg.rpt.max_tokens = 2500
cfg.rpt.output_format = "markdown"

metriques = {
    "mois": "Mars 2026", "MRR": "42 500€ (+8%)",
    "nouveaux_clients": 87, "churn": "3.2%",
    "NPS": 68, "tickets_support": 234,
}
rapport = Business.use("rpt").ask(
    "Rapport mensuel structuré : résumé exécutif, points positifs, "
    "points d'attention, recommandations, KPIs en tableau ASCII.\n\n"
    f"Données : {metriques}"
)
open("rapport.md", "w").write(rapport); print(rapport)
🎮
Jeu de rôle textuel
Maître du jeu IA avec choix narratifs, mémoire de l'histoire. Fantasy, SF ou autre univers.
Divertissement
jeu_rpg.py
from candy import cfg, Storyteller

cfg.rpg.lang = "FR"; cfg.rpg.tone = "dramatic"
cfg.rpg.max_tokens = 600
cfg.rpg.context = (
    "Tu es maître du jeu. Scènes vivantes, "
    "propose toujours 3 choix numérotés à la fin."
)
session = Storyteller.chat(profile="rpg")
intro = session.say("Aventure fantasy, mon perso : voleur elfe. Plante le décor.")
print(f"🎭\n{intro}\n")
while True:
    a = input("👤 Choix : ")
    if a.lower() == "exit": break
    print(f"\n{session.say(a)}\n")
🎵
Compositeur de paroles
Génère des paroles dans différents styles avec structure couplets / refrain / pont / outro.
Divertissement
paroles_chanson.py
from candy import cfg, Music

cfg.music.lang = "FR"; cfg.music.style = "creative"
cfg.music.max_tokens = 800

themes = [
    ("pop mélancolique", "nostalgie de l'adolescence"),
    ("rap engagé",       "l'injustice sociale"),
    ("chanson française", "un amour à Paris"),
]
for style, theme in themes:
    paroles = Music.use("music").ask(
        f"Chanson {style} sur : {theme}. "
        "2 couplets, refrain ×2, pont. Rimes naturelles, images fortes."
    )
    print(f"\n🎵 {style}\n{'='*40}\n{paroles}")
    open(f"{style.replace(' ','_')}.txt", "w").write(paroles)
🌍
Traducteur multilingue instantané
Traduit un texte vers 8 langues en parallèle avec candy.utils.translate(). Détecte automatiquement la langue source.
Utils
traducteur_multilingue.py
from candy import detect_lang, translate

texte = "Bienvenue sur notre plateforme. Nous sommes ravis de vous accueillir."

# Détection automatique de la langue source
langue_source = detect_lang(texte)
print(f"Langue détectée : {langue_source}")

# Traduction vers 8 langues
cibles = {
    "EN": "Anglais", "ES": "Espagnol", "DE": "Allemand",
    "IT": "Italien", "JA": "Japonais", "ZH": "Chinois",
    "AR": "Arabe",  "PT": "Portugais"
}
for code, nom in cibles.items():
    trad = translate(texte, to=code)
    print(f"[{code}] {nom} : {trad}")
📊
Analyseur de sentiment & rapport complet
Analyse avis clients : sentiment, mots-clés, résumé automatique. Pipeline complet en quelques lignes.
Utils
analyse_avis.py
from candy import sentiment, keywords, summarize, full_report

avis = [
    "Super produit, livraison ultra rapide, je recommande vivement !",
    "Déçu, la qualité n'est pas au rendez-vous, emballage abîmé.",
    "Correct sans plus, rapport qualité-prix acceptable.",
]

for i, texte in enumerate(avis, 1):
    s = sentiment(texte)
    kws = keywords(texte, n=3, lang="FR")
    print(f"Avis {i} → {s['label']} ({s['score']:.0%}) | Mots-clés : {', '.join(kws)}")

# Rapport complet sur un texte long
article = "Votre article long ici..."
report = full_report(article, lang="FR")
print(f"Résumé : {report['summary']}")
print(f"Titres : {report['titles']}")
⚙️
Pipeline de traitement de texte
Enchaîne résumé → réécriture → correction en automatique. Chaque étape alimente la suivante.
Utils
pipeline_texte.py
from candy import pipeline, spellcheck, generate_faq

texte_brut = """
Le machine learning permet aux ordinateurs dapprendre
automatiquement à partir de données sans être explicitement
programmés pour chaque tache specifique.
"""

# Pipeline : résumé → réécriture professionnelle → correction
result = pipeline(
    texte_brut,
    steps=[
        ("summarizer", "Résume en 2 phrases claires"),
        ("writing",    "Réécris de façon professionnelle"),
        ("reviewer",   "Corrige toutes les erreurs"),
    ],
    lang="FR"
)
print("Résultat final :", result["final"])

# Génère une FAQ à partir du texte
faq = generate_faq(texte_brut, n=3, lang="FR")
for item in faq:
    print(f"Q: {item['question']}")
    print(f"R: {item['answer']}
")
🔬
Assistant recherche scientifique
Analyse un sujet scientifique, génère une bibliographie structurée et explique les concepts clés.
Science
recherche_scientifique.py
from candy import cfg, Science, Research, Summarizer

cfg.sci.lang          = "FR"
cfg.sci.max_tokens    = 2000
cfg.sci.output_format = "markdown"
cfg.sci.expertise     = "intermediate"

sujet = "la fusion nucléaire et son potentiel énergétique"

# Explication scientifique
explication = Science.use("sci").ask(
    f"Explique {sujet} : principes physiques, état de la recherche, défis actuels."
)
print(explication)

# Questions de recherche
questions = Research.use("sci").ask(
    f"Génère 5 questions de recherche originales sur {sujet}."
)
print(questions)

# Résumé exécutif
resume = Summarizer.use("sci").ask(
    "Résume en 3 bullet points les enjeux clés.",
    context=explication
)
print(resume)
✈️
Planificateur de voyage complet
Génère un itinéraire jour par jour, liste les incontournables, conseille sur le budget et la météo.
Voyage
planificateur_voyage.py
from candy import cfg, Travel, Planner

cfg.trip.lang          = "FR"
cfg.trip.max_tokens    = 3000
cfg.trip.output_format = "markdown"
cfg.trip.style         = "detailed"

destination = "Kyoto, Japon"
duree       = "7 jours"
budget      = "2000€"

# Itinéraire complet
itineraire = Travel.use("trip").ask(
    f"Itinéraire {duree} à {destination}, budget {budget}. "
    "Jour par jour avec horaires, transports et restaurants."
)
print(itineraire)

# Plan logistique
logistique = Planner.use("trip").ask(
    "Checklist complète : documents, bagages, réservations à faire."
)
print(logistique)

# Sauvegarde
with open("voyage_kyoto.md", "w", encoding="utf-8") as f:
    f.write(f"# Voyage {destination}

{itineraire}

## Logistique
{logistique}")
print("Sauvegardé → voyage_kyoto.md")
🗺️
Analyse géopolitique d'un conflit
Analyse les causes, acteurs et conséquences d'un conflit international sous plusieurs angles.
Géopolitique
analyse_geopolitique.py
from candy import cfg, Geopolitics, History, Ethics

cfg.geo.lang          = "FR"
cfg.geo.max_tokens    = 2000
cfg.geo.output_format = "markdown"
cfg.geo.tone          = "neutral"

sujet = "les tensions en mer de Chine méridionale"

# Analyse géopolitique actuelle
analyse = Geopolitics.use("geo").ask(
    f"Analyse {sujet} : acteurs, enjeux stratégiques, risques d'escalade."
)
print(analyse)

# Contexte historique
contexte = History.use("geo").ask(
    f"Résume l'historique des tensions dans cette région depuis 1945."
)
print(contexte)

# Dimension éthique
ethique = Ethics.use("geo").ask(
    "Quels sont les enjeux éthiques du droit international dans ce contexte ?"
)
print(ethique)
Analyseur de projet crypto
Évalue un projet blockchain : tokenomics, risques, cas d'usage et potentiel technique.
Crypto
analyse_crypto.py
from candy import cfg, Crypto, Finance, Security

cfg.cr.lang       = "FR"
cfg.cr.max_tokens = 1500
cfg.cr.style      = "detailed"

projet = "Ethereum"

# Analyse technique blockchain
tech = Crypto.use("cr").ask(
    f"Analyse technique de {projet} : consensus, scalabilité, tokenomics, DeFi."
)
print(tech)

# Analyse financière
fin = Finance.use("cr").ask(
    f"Risques d'investissement sur {projet} : volatilité, réglementation, concurrence."
)
print(fin)

# Risques de sécurité
sec = Security.use("cr").ask(
    f"Principaux vecteurs d'attaque sur les smart contracts {projet}."
)
print(sec)
🛠️
Générateur de configuration DevOps
Génère Dockerfile, docker-compose, pipeline CI/CD et config Kubernetes adaptés à ton projet.
DevOps
config_devops.py
from candy import cfg, DevOps
import os

cfg.ops = cfg.preset("coder")
cfg.ops.lang = "FR"

stack = "API FastAPI Python, base PostgreSQL, Redis pour le cache"

configs = {
    "Dockerfile":       f"Dockerfile optimisé pour {stack}. Multi-stage build.",
    "docker-compose.yml": f"docker-compose pour {stack} avec healthchecks.",
    "github-ci.yml":    f"Pipeline GitHub Actions : lint, tests, build, deploy.",
}

for fichier, prompt in configs.items():
    contenu = DevOps.use("ops").ask(
        f"Génère un {fichier} complet et prêt à l'emploi pour : {prompt}"
    )
    with open(fichier, "w") as f:
        f.write(contenu)
    print(f"✅ {fichier} généré")
💭
Débat philosophique structuré
Explore une question philosophique sous plusieurs angles avec thèse, antithèse et synthèse.
Philosophie
debat_philosophique.py
from candy import cfg, Philosophy, Ethics, Reflexion

cfg.phi.lang       = "FR"
cfg.phi.max_tokens = 1500
cfg.phi.style      = "academic"
cfg.phi.tone       = "socratic"

question = "Le libre arbitre est-il compatible avec un univers déterministe ?"

thèse = Philosophy.use("phi").ask(
    f"Défends la thèse compatibiliste sur : {question}"
)
antithèse = Philosophy.use("phi").ask(
    f"Défends la thèse incompatibiliste sur : {question}"
)
synthèse = Reflexion.use("phi").ask(
    "Propose une synthèse dialectique des deux positions.",
    context=f"Thèse:
{thèse}

Antithèse:
{antithèse}"
)

print(f"THÈSE
{thèse}

ANTITHÈSE
{antithèse}

SYNTHÈSE
{synthèse}")

with open("debat_libre_arbitre.md", "w", encoding="utf-8") as f:
    f.write(f"# {question}

## Thèse
{thèse}

## Antithèse
{antithèse}

## Synthèse
{synthèse}")
🧘
Programme bien-être personnalisé
Combine Nutrition, Yoga et Mindfulness pour créer un programme hebdomadaire complet adapté au profil de l'utilisateur.
Bien-être
programme_bienetre.py
from candy import cfg, Nutrition, Yoga, Mindfulness

cfg.zen.lang       = "FR"
cfg.zen.max_tokens = 1500
cfg.zen.style      = "detailed"
cfg.zen.tone       = "encouraging"

profil = "Homme 35 ans, sédentaire, stress professionnel élevé, végétarien"

plan_nutri = Nutrition.use("zen").ask(
    f"Plan alimentaire hebdomadaire pour : {profil}. "
    "Liste les repas, macros et compléments recommandés."
)
programme_yoga = Yoga.use("zen").ask(
    f"Programme yoga 5j/semaine pour : {profil}. "
    "Postures, durées, niveau débutant."
)
meditation = Mindfulness.use("zen").ask(
    "Routine de pleine conscience anti-stress de 10 minutes par jour."
)

with open("programme_bienetre.md", "w", encoding="utf-8") as f:
    f.write(f"# Programme Bien-être

## Nutrition
{plan_nutri}

## Yoga
{programme_yoga}

## Méditation
{meditation}")
print("✅ Programme sauvegardé → programme_bienetre.md")
⚛️
Explorer l'informatique quantique
Introduction au computing quantique avec Qiskit, comparaison classique vs quantique et premier algorithme.
Tech avancée
intro_quantique.py
from candy import cfg, Quantum, MLOps, Prompt

cfg.tech.lang       = "FR"
cfg.tech.max_tokens = 2000
cfg.tech.expertise  = "intermediate"
cfg.tech.output_format = "markdown"

# Introduction au quantique
intro = Quantum.use("tech").ask(
    "Explique les qubits, la superposition et l'intrication. "
    "Donne un exemple avec l'algorithme de Grover."
)
print(intro)

# Application MLOps + Quantum
hybrid = MLOps.use("tech").ask(
    "Comment intégrer des circuits quantiques dans un pipeline ML classique ?"
)
print(hybrid)

# Optimiser un prompt pour un LLM quantique
prompt_opt = Prompt.use("tech").ask(
    "Écris un prompt chain-of-thought pour résoudre un problème d'optimisation combinatoire."
)
print(prompt_opt)
📱
Stratégie digitale complète
Combine SEO, SocialMedia, Copywriting et Branding pour bâtir une présence en ligne cohérente.
Digital
strategie_digitale.py
from candy import cfg, SEO, SocialMedia, Copywriting, Branding

cfg.dig.lang       = "FR"
cfg.dig.max_tokens = 1500
cfg.dig.style      = "detailed"

marque = "SkinGlow — cosmétiques naturels haut de gamme"

identite = Branding.use("dig").ask(
    f"Crée l'identité de marque complète pour : {marque}. "
    "Valeurs, ton de voix, naming, tagline."
)
seo_strategy = SEO.use("dig").ask(
    f"Stratégie SEO pour {marque} : mots-clés, structure du site, backlinks."
)
social = SocialMedia.use("dig").ask(
    f"Plan de contenu 30 jours pour Instagram et TikTok : {marque}."
)
landing = Copywriting.use("dig").ask(
    f"Rédige la page d'accueil (hero section + 3 arguments) pour : {marque}."
)

for titre, contenu in [("Identité", identite), ("SEO", seo_strategy),
                       ("Social", social), ("Landing", landing)]:
    print(f"
{'='*40}
{titre}
{'='*40}
{contenu}")
👥
Pipeline de recrutement complet
Génère une offre d'emploi, des questions d'entretien et une grille d'évaluation avec HRM, Leadership et Consulting.
RH & Management
recrutement.py
from candy import cfg, HRM, Leadership, Consulting

cfg.rh.lang       = "FR"
cfg.rh.max_tokens = 1500
cfg.rh.style      = "detailed"

poste = "Lead Developer Python — startup IA, 5 ans d'expérience, full remote"

offre = HRM.use("rh").ask(
    f"Rédige une offre d'emploi attractive et inclusive pour : {poste}."
)
questions = Leadership.use("rh").ask(
    f"10 questions d'entretien comportementales pour {poste}. "
    "Inclus des questions techniques et de culture d'équipe."
)
grille = Consulting.use("rh").ask(
    "Crée une grille d'évaluation candidat avec critères pondérés."
)

print(f"OFFRE
{offre}

QUESTIONS
{questions}

GRILLE
{grille}")
with open("recrutement_lead_dev.md", "w", encoding="utf-8") as f:
    f.write(f"# Recrutement — {poste}

## Offre
{offre}

## Questions
{questions}

## Grille
{grille}")
🎙️
Lancer un podcast de A à Z
Génère le concept, le nom, les 5 premiers épisodes et la stratégie de croissance avec Podcast, Branding et SocialMedia.
Média
lancer_podcast.py
from candy import cfg, Podcast, Branding, SocialMedia

cfg.pod.lang       = "FR"
cfg.pod.max_tokens = 2000
cfg.pod.style      = "detailed"

theme = "entrepreneuriat tech pour les 25-35 ans"

concept = Branding.use("pod").ask(
    f"Crée le concept complet d'un podcast sur {theme} : "
    "nom, tagline, identité sonore, cibles."
)
episodes = Podcast.use("pod").ask(
    f"Rédige les 5 premiers épisodes pour un podcast {theme} : "
    "titre, description, plan détaillé, durée estimée."
)
croissance = SocialMedia.use("pod").ask(
    f"Stratégie de lancement et croissance pour ce podcast : "
    "plateformes, promotion, collaborations, monétisation."
)

print(f"CONCEPT
{concept}

ÉPISODES
{episodes}

CROISSANCE
{croissance}")
with open("podcast_plan.md", "w", encoding="utf-8") as f:
    f.write(f"# Podcast Plan

## Concept
{concept}

## Épisodes
{episodes}

## Croissance
{croissance}")
Copié !