cakechat  by lukalabs

Emotional generative dialog system backend

Created 7 years ago
1,710 stars

Top 24.7% on SourcePulse

GitHubView on GitHub
Project Summary

CakeChat is an emotional generative dialog system designed to create chatbots capable of expressing emotions through conversation. It targets developers and researchers looking to build more engaging and nuanced conversational AI agents. The primary benefit is the ability to generate responses conditioned on specific emotional states or personas, enhancing the expressiveness of chatbots.

How It Works

CakeChat employs a Hierarchical Recurrent Encoder-Decoder (HRED) architecture utilizing multilayer RNNs with GRU cells, featuring a bidirectional encoder for deep dialog context. A "thought vector" is fed into the decoder at each step, and the model's responses can be conditioned on arbitrary categorical labels, such as emotion or persona ID. For response generation, it supports four algorithms: sampling, beamsearch, sampling-reranking, and beamsearch-reranking, with options for reranking based on log-likelihood or MMI criteria.

Quick Start & Requirements

The recommended installation method is via Docker, with separate CPU and GPU images available. Manual installation requires Python 3.5.2, TensorFlow 1.12.2, and Keras 2.2.4. Pre-trained models can be fetched using python tools/fetch.py. The project was trained on a large, preprocessed Twitter corpus (approx. 50 million dialogs).

Highlighted Details

  • Supports conditioning responses on categorical labels like emotion (joy, anger, sadness, fear, neutral), persona ID, or topic.
  • Offers multiple decoding strategies, including reranking based on MMI-criteria for improved response quality.
  • Provides tools for training from scratch, fine-tuning pre-trained models, and evaluating model performance using various metrics.
  • Includes a local HTTP server and a Telegram bot for deploying the trained models.

Maintenance & Community

The project explicitly states it is unmaintained, recommending Transformer-based dialog models (e.g., Microsoft's DialoGPT) as superior alternatives. It was developed by the Replika team. Issues and feature requests can be tracked on GitHub Issues.

Licensing & Compatibility

CakeChat is licensed under the Apache License, Version 2.0. This license generally permits commercial use and modification.

Limitations & Caveats

The project is unmaintained, and its RNN-based architecture is considered less effective than modern Transformer models. It relies on older versions of TensorFlow (1.x) and Keras. The original training dataset (Twitter corpus) is not publicly available due to privacy policies, necessitating users to provide their own data for training or fine-tuning.

Health Check
Last Commit

5 years ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
3 stars in the last 30 days

Explore Similar Projects

Starred by Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), Wei-Lin Chiang Wei-Lin Chiang(Cofounder of LMArena), and
13 more.

awesome-tensor-compilers by merrymercy

0.4%
3k
Curated list of tensor compiler projects and papers
Created 5 years ago
Updated 1 year ago
Starred by Shengjia Zhao Shengjia Zhao(Chief Scientist at Meta Superintelligence Lab), Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), and
14 more.

BIG-bench by google

0.2%
3k
Collaborative benchmark for probing and extrapolating LLM capabilities
Created 4 years ago
Updated 1 year ago
Starred by Lysandre Debut Lysandre Debut(Chief Open-Source Officer at Hugging Face), Shizhe Diao Shizhe Diao(Author of LMFlow; Research Scientist at NVIDIA), and
14 more.

simpletransformers by ThilinaRajapakse

0.0%
4k
Rapid NLP task implementation
Created 6 years ago
Updated 3 months ago
Starred by Aravind Srinivas Aravind Srinivas(Cofounder of Perplexity), Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), and
16 more.

text-to-text-transfer-transformer by google-research

0.1%
6k
Unified text-to-text transformer for NLP research
Created 6 years ago
Updated 3 weeks ago
Starred by Vaibhav Nivargi Vaibhav Nivargi(Cofounder of Moveworks), Chuan Li Chuan Li(Chief Scientific Officer at Lambda), and
5 more.

awesome-mlops by visenger

0.1%
13k
Curated MLOps knowledge hub
Created 5 years ago
Updated 1 year ago
Feedback? Help us improve.