Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

25 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ€– Tajan β€” Intelligent User Intent Recognition Assistant

🧠 Project Overview

Tajan is an intelligent intent-recognition system built on deep bidirectional neural networks. Given a sentence or question from the user, it identifies the intended purpose from among 419 distinct topics and returns a relevant, accurate, and efficient response.

The project was designed and implemented to provide a fast, accurate, customizable solution that runs fully offline β€” making it suitable for a wide range of industries such as customer support, education, healthcare, e-commerce, and municipal services.


✨ Key Features

Feature Description
Smart Bilingual Processing Automatic detection of Persian and English with appropriate lemmatizers
High Response Speed Responds in under 0.5 seconds β€” suitable for thousands of concurrent users
Solid Accuracy Achieves approximately 67% accuracy across 419 intents
Fully Offline Execution No internet connection required β€” ideal for underserved regions
Easy Customization Build your own assistant by editing a single JSON file
Smart Data Augmentation Uses Persian synonyms to increase training data by 1.8x
Graphical User Interface Simple interaction built with Tkinter
High Scalability Adaptable to different industries by changing the dataset
Low Cost Built entirely on free, open-source libraries
Complete Documentation Step-by-step guide for installation, execution, and customization

πŸ“‹ System Requirements

Requirement Details
Python Version 3.10 or higher (recommended)
pip Python package manager
RAM Minimum 4 GB (for model training)
OS Windows, Linux, or macOS (all supported)

Note: The project has been tested on Python 3.10


πŸ“ Project Structure

tajan/
β”‚
β”œβ”€β”€ README.md
β”œβ”€β”€ LICENSE            
β”œβ”€β”€ .gitignore         
β”œβ”€β”€ requirements.txt  
β”‚
β”œβ”€β”€ Model_learning_code_and_files/
β”‚   β”œβ”€β”€ tajan.ipynb
β”‚   β”œβ”€β”€ intents.json
β”‚   └── synonym_dict.json
β”‚
β”œβ”€β”€ chatbot/
β”‚   β”œβ”€β”€ chat_with_model.py
β”‚   β”œβ”€β”€ best_model.keras
β”‚   β”œβ”€β”€ intents.json
β”‚   └── preprocessed_data.pkl
β”‚
└── generated_files/
    β”œβ”€β”€ training_log.csv
    β”œβ”€β”€ augmented_intents.json
    β”œβ”€β”€ output.png
    β”œβ”€β”€ marge.py
    └── logs/

πŸš€ Getting Started

Step 1: Install Dependencies

cd tajan
pip install -r requirements.txt

Tip: If you face network restrictions, use:

pip install -r requirements.txt --index-url https://pypi.org/simple/

Step 2: Run the Chatbot

cd chatbot
python chat_with_model.py

Note: The initial model load may take up to 30 seconds.


Step 3: Retrain the Model (Optional)

cd Model_learning_code_and_files
jupyter notebook tajan.ipynb

πŸ“‚ Folder Descriptions

Folder Description
chatbot/ Code and model for running the assistant
Model_learning_code_and_files/ Training code, dataset, and synonym dictionary
generated_files/ Output files from training (optional, for review)

⚠️ Important Notes

  • The first run may take up to 30 seconds to load the model.
  • Keep all files in their original folders β€” do not change the directory structure.
  • No internet connection is required after installation.

πŸ“„ License

This project is licensed under the MIT License – feel free to use, modify, and distribute with proper attribution.


πŸ‘¨β€πŸ’» Author

Mahdi Razaghi

Email : phytonabcdefg1380@gmail.com


⭐ Show Your Support

If you find Tajan useful or interesting, please consider giving it a star ⭐ on GitHub. Your support helps increase the project's visibility and motivates further development.


πŸ“’ Spread the Word

If this project helped you in any way, share it with others!
You can:

  • ⭐ Star the repository on GitHub
  • 🐦 Share it on Twitter / X
  • πŸ”— Link to it in your portfolio or blog
  • πŸ“§ Send it to colleagues and friends

πŸ’‘ Every star and share makes a difference. Thank you!

πŸ’‘ "A smarter future is built today."

About

πŸ€– Tajan – An intelligent bilingual (Persian/English) intent recognition chatbot powered by BiLSTM deep learning. Features: offline Persian/English lemmatizer, smart data augmentation (1.8x), GUI interface, and 419 intent classes with ~66% accuracy. Fully customizable, open-source, and runs without internet. Built with TensorFlow, Hazm, and NLTK.

Topics

Resources

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages