初始化项目,由ModelHub XC社区提供模型
Model: yowww1094/tourism-llm-fine-tuned-qwen2-1.5b-lora-merged Source: Original Platform
This commit is contained in:
36
.gitattributes
vendored
Normal file
36
.gitattributes
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.arrow filter=lfs diff=lfs merge=lfs -text
|
||||
*.bin filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.ckpt filter=lfs diff=lfs merge=lfs -text
|
||||
*.ftz filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.h5 filter=lfs diff=lfs merge=lfs -text
|
||||
*.joblib filter=lfs diff=lfs merge=lfs -text
|
||||
*.lfs.* filter=lfs diff=lfs merge=lfs -text
|
||||
*.mlmodel filter=lfs diff=lfs merge=lfs -text
|
||||
*.model filter=lfs diff=lfs merge=lfs -text
|
||||
*.msgpack filter=lfs diff=lfs merge=lfs -text
|
||||
*.npy filter=lfs diff=lfs merge=lfs -text
|
||||
*.npz filter=lfs diff=lfs merge=lfs -text
|
||||
*.onnx filter=lfs diff=lfs merge=lfs -text
|
||||
*.ot filter=lfs diff=lfs merge=lfs -text
|
||||
*.parquet filter=lfs diff=lfs merge=lfs -text
|
||||
*.pb filter=lfs diff=lfs merge=lfs -text
|
||||
*.pickle filter=lfs diff=lfs merge=lfs -text
|
||||
*.pkl filter=lfs diff=lfs merge=lfs -text
|
||||
*.pt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pth filter=lfs diff=lfs merge=lfs -text
|
||||
*.rar filter=lfs diff=lfs merge=lfs -text
|
||||
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
||||
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
||||
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
||||
*.tar filter=lfs diff=lfs merge=lfs -text
|
||||
*.tflite filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.wasm filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
||||
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
||||
tokenizer.json filter=lfs diff=lfs merge=lfs -text
|
||||
340
README.md
Normal file
340
README.md
Normal file
@@ -0,0 +1,340 @@
|
||||
---
|
||||
library_name: transformers
|
||||
license: mit
|
||||
datasets:
|
||||
- yowww1094/tourism-llm-fine-tuning-dataset
|
||||
language:
|
||||
- en
|
||||
base_model:
|
||||
- Qwen/Qwen2.5-1.5B-Instruct
|
||||
tags:
|
||||
- tourism
|
||||
- travel
|
||||
- question-answering
|
||||
- lora
|
||||
- fine-tuned
|
||||
- rag
|
||||
---
|
||||
|
||||
# Tourism Assistant — Qwen2.5-1.5B Fine-Tuned
|
||||
|
||||
A fine-tuned version of [Qwen/Qwen2.5-1.5B-Instruct](https://huggingface.co/Qwen/Qwen2.5-1.5B-Instruct) trained on a custom tourism Q&A dataset generated through a RAG-grounded pipeline. Built as a personal end-to-end learning project covering data collection, dataset engineering, supervised fine-tuning, and deployment.
|
||||
|
||||
> ⚠️ This model is not production-ready. It is a learning project. Outputs can be incorrect, incomplete, or inconsistent — especially on topics not well-represented in the training data. Do not rely on this model for real travel decisions.
|
||||
|
||||
---
|
||||
|
||||
## Model Details
|
||||
|
||||
### Model Description
|
||||
|
||||
This model was fine-tuned using FP16 LoRA (Low-Rank Adaptation) on a small custom dataset of ~150–200 tourism-focused question-answer pairs. The training examples were generated through a RAG pipeline: Reddit travel posts were scraped, embedded, and stored in a Qdrant vector store, then a locally-hosted Qwen2.5-7B (via Ollama) was used to generate grounded Q&A pairs from retrieved context chunks. The resulting dataset was formatted in ChatML and used to fine-tune this model.
|
||||
|
||||
The goal of fine-tuning was to adjust the model's **behavioral style** — making it more focused, concise, and consistently helpful for travel queries — rather than to inject new factual knowledge. Factual grounding at inference time is handled by a RAG pipeline backed by Qdrant Cloud.
|
||||
|
||||
- **Developed by:** Younes
|
||||
- **Model type:** Causal Language Model — fine-tuned for instruction following
|
||||
- **Language:** English
|
||||
- **License:** MIT
|
||||
- **Base model:** [Qwen/Qwen2.5-1.5B-Instruct](https://huggingface.co/Qwen/Qwen2.5-1.5B-Instruct)
|
||||
- **Fine-tuning method:** FP16 LoRA (merged into base weights)
|
||||
- **Training dataset:** [yowww1094/tourism-llm-fine-tuning-dataset](https://huggingface.co/datasets/yowww1094/tourism-llm-fine-tuning-dataset)
|
||||
|
||||
### Model Sources
|
||||
|
||||
- **Repository:** [Github](https://github.com/yowww1094/llm-tourism-assistant)
|
||||
- **Demo:** [Demo](https://huggingface.co/spaces/yowww1094/AI-tourism-chatbot)
|
||||
|
||||
---
|
||||
|
||||
## Uses
|
||||
|
||||
### Direct Use
|
||||
|
||||
This model can be used as a conversational assistant for general tourism and travel questions — destination information, logistics, visa guidance, packing advice, and similar topics. It works best when paired with a retrieval pipeline that provides relevant context at inference time.
|
||||
|
||||
```python
|
||||
from transformers import AutoModelForCausalLM, AutoTokenizer
|
||||
|
||||
model_id = "yowww1094/tourism-assistant-qwen2"
|
||||
tokenizer = AutoTokenizer.from_pretrained(model_id)
|
||||
model = AutoModelForCausalLM.from_pretrained(model_id, torch_dtype="auto", device_map="auto")
|
||||
|
||||
messages = [
|
||||
{"role": "system", "content": "You are a helpful tourism assistant."},
|
||||
{"role": "user", "content": "What are the must-visit places in Marrakech?"}
|
||||
]
|
||||
|
||||
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
|
||||
inputs = tokenizer([text], return_tensors="pt").to(model.device)
|
||||
|
||||
outputs = model.generate(**inputs, max_new_tokens=256, temperature=0.7, do_sample=True)
|
||||
response = tokenizer.decode(outputs[0][len(inputs.input_ids[0]):], skip_special_tokens=True)
|
||||
print(response)
|
||||
```
|
||||
|
||||
### Downstream Use
|
||||
|
||||
This model is designed to be used as the generation component of a RAG pipeline. The recommended usage is:
|
||||
|
||||
1. Embed the user query with `all-MiniLM-L6-v2`
|
||||
2. Retrieve top-k relevant chunks from a Qdrant vector store
|
||||
3. Inject retrieved context into the prompt before generation
|
||||
4. Pass the full prompt to this model
|
||||
|
||||
Pairing the model with retrieval significantly improves factual accuracy on specific travel queries compared to using the model standalone.
|
||||
|
||||
### Out-of-Scope Use
|
||||
|
||||
- **Real-time travel information:** The model has no access to live data. Flight prices, visa requirements, and safety conditions change frequently — do not rely on this model for current information.
|
||||
- **Medical or legal travel advice:** The model is not equipped to give reliable guidance on health requirements, legal restrictions, or emergency situations.
|
||||
- **Non-English queries:** The model was trained exclusively on English data and is not reliable for other languages.
|
||||
- **High-stakes decisions:** This is a learning project. Outputs should not be used to make actual travel bookings, visa applications, or safety assessments.
|
||||
|
||||
---
|
||||
|
||||
## Bias, Risks, and Limitations
|
||||
|
||||
**Dataset limitations — primary source of inaccuracy:**
|
||||
The training dataset contains only ~150–200 examples sourced from Reddit travel communities. This introduces several compounding problems:
|
||||
|
||||
- Reddit's user base skews toward English-speaking, Western travellers — advice reflects this demographic and may not generalise to other travel styles or origins
|
||||
- The dataset covers only a narrow slice of the tourism domain; large topic areas have no representation
|
||||
- Source Reddit posts were not independently fact-checked; incorrect or outdated community advice may appear in training examples
|
||||
- Only ~40 examples (~20%) were manually reviewed for quality before training
|
||||
|
||||
**Model behaviour limitations:**
|
||||
- The model hallucinates specific facts (prices, distances, operating hours, visa fees) when retrieved context does not provide explicit grounding
|
||||
- It does not reliably abstain from answering when it does not know — it tends to produce a confident-sounding response regardless
|
||||
- Response consistency is variable; the same query may produce meaningfully different answers across runs
|
||||
- The model may reflect biases present in Reddit data, including opinions presented as facts
|
||||
|
||||
### Recommendations
|
||||
|
||||
- Always pair this model with a retrieval pipeline for factual queries
|
||||
- Display a disclaimer to end users that outputs may be inaccurate
|
||||
- Do not deploy in contexts where incorrect travel information could cause harm
|
||||
- Treat all specific factual claims (prices, hours, requirements) as unverified until confirmed from an authoritative source
|
||||
|
||||
---
|
||||
|
||||
## How to Get Started with the Model
|
||||
|
||||
### Basic inference (no RAG)
|
||||
|
||||
```python
|
||||
from transformers import AutoModelForCausalLM, AutoTokenizer
|
||||
import torch
|
||||
|
||||
model_id = "yowww1094/tourism-assistant-qwen2"
|
||||
|
||||
tokenizer = AutoTokenizer.from_pretrained(model_id)
|
||||
model = AutoModelForCausalLM.from_pretrained(
|
||||
model_id,
|
||||
torch_dtype=torch.float16,
|
||||
device_map="auto"
|
||||
)
|
||||
|
||||
messages = [
|
||||
{"role": "system", "content": "You are a helpful tourism assistant. Answer travel questions clearly and concisely."},
|
||||
{"role": "user", "content": "What is the best time of year to visit Morocco?"}
|
||||
]
|
||||
|
||||
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
|
||||
inputs = tokenizer([text], return_tensors="pt").to(model.device)
|
||||
|
||||
with torch.no_grad():
|
||||
outputs = model.generate(
|
||||
**inputs,
|
||||
max_new_tokens=300,
|
||||
temperature=0.7,
|
||||
top_p=0.9,
|
||||
do_sample=True,
|
||||
repetition_penalty=1.1
|
||||
)
|
||||
|
||||
response = tokenizer.decode(outputs[0][len(inputs.input_ids[0]):], skip_special_tokens=True)
|
||||
print(response)
|
||||
```
|
||||
|
||||
### Recommended inference (with RAG context)
|
||||
|
||||
```python
|
||||
# retrieved_context = top-k chunks from your Qdrant vector store
|
||||
|
||||
system_prompt = "You are a helpful tourism assistant. Use only the provided context to answer. If the context does not contain enough information, say so."
|
||||
|
||||
user_prompt = f"""Context:
|
||||
{retrieved_context}
|
||||
|
||||
Question: {user_query}"""
|
||||
|
||||
messages = [
|
||||
{"role": "system", "content": system_prompt},
|
||||
{"role": "user", "content": user_prompt}
|
||||
]
|
||||
|
||||
# then apply chat template and generate as above
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Training Details
|
||||
|
||||
### Training Data
|
||||
|
||||
The model was fine-tuned on [yowww1094/tourism-llm-fine-tuning-dataset](https://huggingface.co/datasets/yowww1094/tourism-llm-fine-tuning-dataset), a custom dataset generated through the following pipeline:
|
||||
|
||||
1. Reddit travel posts and comments were scraped from subreddits including r/travel, r/Morocco, r/solotravel, and r/backpacking using PRAW
|
||||
2. Raw text was cleaned (length filter, deduplication, HTML stripping, encoding fix) and chunked
|
||||
3. Chunks were embedded with `all-MiniLM-L6-v2` and indexed in a Qdrant vector store
|
||||
4. A locally-hosted Qwen2.5-7B (via Ollama) was prompted to generate grounded question-answer pairs from retrieved context chunks
|
||||
5. Outputs were post-processed into ChatML format and manually sampled for quality (~40 examples reviewed)
|
||||
|
||||
**Dataset size:** ~150–200 question-answer pairs
|
||||
**Format:** JSON Lines
|
||||
**Split:** 90% train / 10% validation
|
||||
**Quality note:** Only ~65% of manually reviewed examples were rated acceptable. No automated quality filter was applied to the full dataset.
|
||||
|
||||
### Training Procedure
|
||||
|
||||
#### Preprocessing
|
||||
|
||||
Each example was formatted using the Qwen2.5-Instruct chat template via `tokenizer.apply_chat_template()`. Sequences were truncated to a maximum length of 512 tokens. No data augmentation was applied.
|
||||
|
||||
#### Training Hyperparameters
|
||||
|
||||
| Parameter | Value |
|
||||
|---|---|
|
||||
| Training regime | FP16 mixed precision |
|
||||
| LoRA rank (r) | 16 |
|
||||
| LoRA alpha | 32 |
|
||||
| LoRA dropout | 0.05 |
|
||||
| Target modules | q_proj, v_proj |
|
||||
| Epochs | 3 |
|
||||
| Batch size | 4 |
|
||||
| Gradient accumulation steps | 4 (effective batch size: 16) |
|
||||
| Learning rate | 2e-4 |
|
||||
| LR scheduler | Cosine annealing |
|
||||
| Warmup ratio | 0.03 |
|
||||
| Max sequence length | 512 tokens |
|
||||
| Optimizer | AdamW (default via transformers) |
|
||||
|
||||
#### Hardware and Duration
|
||||
|
||||
- **Hardware:** NVIDIA T4 GPU (15 GB VRAM) — Kaggle free tier
|
||||
- **Training time:** ~45–60 minutes for 3 epochs on ~150 examples
|
||||
- **Framework:** transformers 4.x + peft + trl (SFTTrainer) + accelerate
|
||||
|
||||
---
|
||||
|
||||
## Evaluation
|
||||
|
||||
### Testing Data
|
||||
|
||||
Evaluation was performed on a held-out validation split of ~15–20 examples (10% of the total dataset). Due to the small size of this split, quantitative metrics should be interpreted with significant caution — they are not statistically reliable estimates of generalisation performance.
|
||||
|
||||
In addition to automatic metrics, a qualitative evaluation was performed by manually inspecting model outputs on ~20 held-out queries not present in the training data.
|
||||
|
||||
### Metrics
|
||||
|
||||
| Metric | Value | Notes |
|
||||
|---|---|---|
|
||||
| Training loss (epoch 1) | ~1.62 | |
|
||||
| Training loss (epoch 3) | ~0.85 | Consistent decrease across epochs |
|
||||
| Validation loss (epoch 1) | ~1.74 | |
|
||||
| Validation loss (epoch 3) | ~1.29 | Slight divergence from train loss — mild overfitting |
|
||||
| Validation perplexity | ~2.3 | On 15–20 examples only; not a reliable generalisation estimate |
|
||||
|
||||
### Results
|
||||
|
||||
**What improved after fine-tuning:**
|
||||
- Response style and tone became more focused and consistently helpful compared to the base model
|
||||
- The model more readily uses tourism-relevant vocabulary and response structure
|
||||
- For in-distribution queries (topics well-represented in the dataset), the combination of fine-tuning + RAG outperforms either mechanism alone
|
||||
|
||||
**What did not improve:**
|
||||
- Factual accuracy on out-of-distribution queries is comparable to the base model — fine-tuning at this scale does not inject meaningful new factual knowledge
|
||||
- Hallucination rate on specific facts (prices, dates, requirements) is unchanged without retrieval grounding
|
||||
- The model occasionally produces responses that closely paraphrase training examples, suggesting partial memorisation
|
||||
|
||||
#### Summary
|
||||
|
||||
Fine-tuning on this small dataset improved behavioral style but not factual coverage. The model is more useful when paired with a retrieval pipeline than when used standalone. A dataset 10–20× larger with verified factual content would be needed to produce a genuinely reliable tourism assistant.
|
||||
|
||||
---
|
||||
|
||||
## Environmental Impact
|
||||
|
||||
Carbon emissions were not formally measured. Estimated figures based on training setup:
|
||||
|
||||
- **Hardware type:** NVIDIA T4 GPU (Kaggle free tier)
|
||||
- **Hours used:** ~1 hour total training time
|
||||
- **Cloud provider:** Google (Kaggle infrastructure)
|
||||
- **Compute region:** Unknown
|
||||
- **Carbon emitted:** Estimated < 0.05 kg CO₂eq (based on [ML Impact Calculator](https://mlco2.github.io/impact#compute))
|
||||
|
||||
---
|
||||
|
||||
## Technical Specifications
|
||||
|
||||
### Model Architecture
|
||||
|
||||
- **Architecture:** Qwen2.5 decoder-only transformer (causal LM)
|
||||
- **Parameters:** 1.5 billion (base model)
|
||||
- **Context window:** 32,768 tokens (base model capability; fine-tuning used max 512 tokens)
|
||||
- **Fine-tuning method:** LoRA adapters applied to `q_proj` and `v_proj` attention matrices, then merged into base weights before upload
|
||||
|
||||
### Compute Infrastructure
|
||||
|
||||
- **Training:** Kaggle free-tier notebook, T4 GPU, 15 GB VRAM
|
||||
- **Inference:** Hugging Face Inference Endpoints (free tier)
|
||||
- **Vector store:** Qdrant Cloud (free tier, ~1,200 indexed chunks)
|
||||
- **Embedding:** `sentence-transformers/all-MiniLM-L6-v2`, CPU inference
|
||||
|
||||
### Software
|
||||
|
||||
```
|
||||
transformers>=4.40.0
|
||||
peft>=0.10.0
|
||||
trl>=0.8.0
|
||||
accelerate>=0.28.0
|
||||
sentence-transformers>=2.6.0
|
||||
qdrant-client>=1.9.0
|
||||
torch>=2.1.0
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Citation
|
||||
|
||||
If you reference this project, please cite it as:
|
||||
|
||||
```bibtex
|
||||
@misc{younes2026tourismllm,
|
||||
author = {Younes},
|
||||
title = {End-to-End LLM Pipeline for Tourism Assistant},
|
||||
year = {2026},
|
||||
publisher = {Hugging Face},
|
||||
url = {[Model](https://huggingface.co/yowww1094/tourism-llm-fine-tuned-qwen2-1.5b-lora-merged)}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## More Information
|
||||
|
||||
Full technical report (covering pipeline design, training decisions, limitations, and results in detail):
|
||||
[docs/technical_report.pdf](https://github.com/yowww1094/llm-tourism-assistant/blob/master/docs/technical_report.pdf)
|
||||
|
||||
GitHub repository with full pipeline code:
|
||||
[Github](https://github.com/yowww1094/llm-tourism-assistant)
|
||||
|
||||
Training dataset:
|
||||
[yowww1094/tourism-llm-fine-tuning-dataset](https://huggingface.co/datasets/yowww1094/tourism-llm-fine-tuning-dataset)
|
||||
|
||||
---
|
||||
|
||||
## Model Card Author
|
||||
|
||||
Younes AIT SI ABBOU — personal learning project, April 2026
|
||||
5
added_tokens.json
Normal file
5
added_tokens.json
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"<|endoftext|>": 151643,
|
||||
"<|im_end|>": 151645,
|
||||
"<|im_start|>": 151644
|
||||
}
|
||||
6
chat_template.jinja
Normal file
6
chat_template.jinja
Normal file
@@ -0,0 +1,6 @@
|
||||
{% for message in messages %}{% if loop.first and messages[0]['role'] != 'system' %}{{ '<|im_start|>system
|
||||
You are a helpful assistant.<|im_end|>
|
||||
' }}{% endif %}{{'<|im_start|>' + message['role'] + '
|
||||
' + message['content'] + '<|im_end|>' + '
|
||||
'}}{% endfor %}{% if add_generation_prompt %}{{ '<|im_start|>assistant
|
||||
' }}{% endif %}
|
||||
58
config.json
Normal file
58
config.json
Normal file
@@ -0,0 +1,58 @@
|
||||
{
|
||||
"architectures": [
|
||||
"Qwen2ForCausalLM"
|
||||
],
|
||||
"attention_dropout": 0.0,
|
||||
"bos_token_id": 151643,
|
||||
"dtype": "float16",
|
||||
"eos_token_id": 151645,
|
||||
"hidden_act": "silu",
|
||||
"hidden_size": 1536,
|
||||
"initializer_range": 0.02,
|
||||
"intermediate_size": 8960,
|
||||
"layer_types": [
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention",
|
||||
"full_attention"
|
||||
],
|
||||
"max_position_embeddings": 32768,
|
||||
"max_window_layers": 28,
|
||||
"model_type": "qwen2",
|
||||
"num_attention_heads": 12,
|
||||
"num_hidden_layers": 28,
|
||||
"num_key_value_heads": 2,
|
||||
"rms_norm_eps": 1e-06,
|
||||
"rope_scaling": null,
|
||||
"rope_theta": 1000000.0,
|
||||
"sliding_window": null,
|
||||
"tie_word_embeddings": true,
|
||||
"transformers_version": "4.57.1",
|
||||
"use_cache": true,
|
||||
"use_sliding_window": false,
|
||||
"vocab_size": 151936
|
||||
}
|
||||
14
generation_config.json
Normal file
14
generation_config.json
Normal file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"bos_token_id": 151643,
|
||||
"do_sample": true,
|
||||
"eos_token_id": [
|
||||
151645,
|
||||
151643
|
||||
],
|
||||
"pad_token_id": 151643,
|
||||
"repetition_penalty": 1.1,
|
||||
"temperature": 0.7,
|
||||
"top_k": 20,
|
||||
"top_p": 0.8,
|
||||
"transformers_version": "4.57.1"
|
||||
}
|
||||
151388
merges.txt
Normal file
151388
merges.txt
Normal file
File diff suppressed because it is too large
Load Diff
3
model.safetensors
Normal file
3
model.safetensors
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:f6035e0e091699e48b8ae164dcd5b0a5ea1cc55fa7612b3eeff56478de3d7534
|
||||
size 3087466808
|
||||
20
special_tokens_map.json
Normal file
20
special_tokens_map.json
Normal file
@@ -0,0 +1,20 @@
|
||||
{
|
||||
"additional_special_tokens": [
|
||||
"<|im_start|>",
|
||||
"<|im_end|>"
|
||||
],
|
||||
"eos_token": {
|
||||
"content": "<|im_end|>",
|
||||
"lstrip": false,
|
||||
"normalized": false,
|
||||
"rstrip": false,
|
||||
"single_word": false
|
||||
},
|
||||
"pad_token": {
|
||||
"content": "<|endoftext|>",
|
||||
"lstrip": false,
|
||||
"normalized": false,
|
||||
"rstrip": false,
|
||||
"single_word": false
|
||||
}
|
||||
}
|
||||
3
tokenizer.json
Normal file
3
tokenizer.json
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:bcfe42da0a4497e8b2b172c1f9f4ec423a46dc12907f4349c55025f670422ba9
|
||||
size 11418266
|
||||
43
tokenizer_config.json
Normal file
43
tokenizer_config.json
Normal file
@@ -0,0 +1,43 @@
|
||||
{
|
||||
"add_prefix_space": false,
|
||||
"added_tokens_decoder": {
|
||||
"151643": {
|
||||
"content": "<|endoftext|>",
|
||||
"lstrip": false,
|
||||
"normalized": false,
|
||||
"rstrip": false,
|
||||
"single_word": false,
|
||||
"special": true
|
||||
},
|
||||
"151644": {
|
||||
"content": "<|im_start|>",
|
||||
"lstrip": false,
|
||||
"normalized": false,
|
||||
"rstrip": false,
|
||||
"single_word": false,
|
||||
"special": true
|
||||
},
|
||||
"151645": {
|
||||
"content": "<|im_end|>",
|
||||
"lstrip": false,
|
||||
"normalized": false,
|
||||
"rstrip": false,
|
||||
"single_word": false,
|
||||
"special": true
|
||||
}
|
||||
},
|
||||
"additional_special_tokens": [
|
||||
"<|im_start|>",
|
||||
"<|im_end|>"
|
||||
],
|
||||
"bos_token": null,
|
||||
"clean_up_tokenization_spaces": false,
|
||||
"eos_token": "<|im_end|>",
|
||||
"errors": "replace",
|
||||
"extra_special_tokens": {},
|
||||
"model_max_length": 32768,
|
||||
"pad_token": "<|endoftext|>",
|
||||
"split_special_tokens": false,
|
||||
"tokenizer_class": "Qwen2Tokenizer",
|
||||
"unk_token": null
|
||||
}
|
||||
1
vocab.json
Normal file
1
vocab.json
Normal file
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user