nathishdev/destin-corporate-travel
Destin - Corporate Travel AI Assistant
<div align="center"> <img src="https://img.shields.io/badge/Model-Phi--3.5--mini-blue" alt="Model"> <img src="https://img.shields.io/badge/Task-Travel%20Assistant-green" alt="Task"> <img src="https://img.shields.io/badge/Language-English-red" alt="Language"> </div>
๐จ Model Description
Destin is an AI-powered corporate travel assistant specialized in hotel search and booking. Built on Microsoft's Phi-3.5-mini-instruct and fine-tuned with LoRA, Destin understands natural language hotel queries and converts them into structured booking data.
Key Features
- ๐ฏ Natural Language Understanding: Parse complex hotel queries in conversational language
- ๐ข Corporate Travel Focus: Optimized for business travel scenarios
- ๐ Structured Output: Generates clean JSON for booking systems
- ๐ฌ Conversational: Handles greetings, follow-ups, and clarifications
- โก Fast: Optimized for production deployment
๐ Quick Start
Installation
pip install transformers torch accelerateBasic Usage
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
# Load model
model_name = "nathishdev/destin-corporate-travel"
tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype=torch.float16,
device_map="auto",
trust_remote_code=True
)
# Generate response
def chat(query):
prompt = f'''<|system|>
You are Destin, a corporate travel assistant.<|end|>
<|user|>
{query}<|end|>
<|assistant|>
'''
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
outputs = model.generate(
**inputs,
max_new_tokens=300,
temperature=0.7,
top_p=0.9,
do_sample=True
)
response = tokenizer.decode(outputs[0], skip_special_tokens=True)
# Extract assistant response
response = response.split("<|assistant|>")[-1].strip()
return response
# Example queries
print(chat("Hi! Who are you?"))
# Output: I'm Destin, an AI assistant specialized in corporate hotel bookings...
print(chat("hotel bangalore whitefield under 6k dec 10-12"))
# Output: {"destination": {"city": "Bangalore", "area": "Whitefield"}, ...}๐ก Use Cases
1. Hotel Search Parsing
query = "urgent booking mumbai bkc tonight under 8000"
result = chat(query)
# Extracts: city, area, date, budget, urgency2. Conversational Booking
query = "I need a hotel in Delhi"
response = chat(query)
# Asks for: dates, budget, area preferences3. Multi-City Travel
query = "hotels in bangalore dec 10-12 and mumbai dec 13-15, budget 6k each"
result = chat(query)
# Parses both destinations๐ Model Details
Architecture
- Base Model: microsoft/Phi-3.5-mini-instruct (3.8B parameters)
- Fine-tuning Method: LoRA (Low-Rank Adaptation)
- Trainable Parameters: 8.9M
Performance
- Inference Speed: 30-40 tokens/second (FP16 on A10G GPU)
- Memory Usage: ~8GB GPU RAM (FP16)
- Response Time: 5-10 seconds per query
Training Dataset
The model was trained on:
- Identity & personality examples (30)
- Hotel query parsing (80)
- Conversational flows (20)
- Edge cases (typos, vague queries) (20)
๐ฏ Capabilities
What Destin Can Do
โ Parse hotel search queries into structured JSON โ Handle natural language (typos, abbreviations) โ Understand dates (relative and absolute) โ Extract location, budget, guests, urgency โ Conversational follow-ups โ Multi-city trip planning
Supported Formats
Input Examples:
"hotel bangalore under 5k next week""urgent booking mumbai tonight""need accommodation in delhi aerocity for 3 nights""cheap hotel gurgaon cyber city for 2 people"
Output Format:
{
"destination": {"city": "Bangalore", "area": "Whitefield"},
"dates": {"check_in": "2024-12-10", "check_out": "2024-12-12"},
"budget": {"max_per_night": 6000, "currency": "INR"},
"guests": {"adults": 1}
}๐ง Integration Examples
FastAPI Deployment
from fastapi import FastAPI
from pydantic import BaseModel
app = FastAPI()
class QueryRequest(BaseModel):
query: str
@app.post("/parse")
async def parse_query(request: QueryRequest):
response = chat(request.query)
return {"response": response}MCP (Model Context Protocol)
# Compatible with MCP for agent workflows
# Use Destin as a tool in multi-agent systems๐ Roadmap
- [ ] Flight booking support
- [ ] Cab/transport integration
- [ ] Multi-language support
- [ ] International destinations
- [ ] Real-time price integration
๐ค Contributing
Feedback and suggestions welcome! Open an issue or PR.
๐ License
MIT License - Free for commercial use
Acknowledgments
- Base model: Microsoft Phi-3.5-mini-instruct
- Training platform: Kaggle (free GPU)
- Fine-tuning: LoRA + BitsAndBytes
Built with โค๏ธ for corporate travelers
