VaniAgent moses132 commited on
Commit
cecffc9
·
0 Parent(s):

Duplicate from moses132/dailydialog-chatbot

Browse files

Co-authored-by: MUKIIBI MOSES <moses132@users.noreply.huggingface.co>

.gitattributes ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ *.7z filter=lfs diff=lfs merge=lfs -text
2
+ *.arrow filter=lfs diff=lfs merge=lfs -text
3
+ *.bin filter=lfs diff=lfs merge=lfs -text
4
+ *.bz2 filter=lfs diff=lfs merge=lfs -text
5
+ *.ckpt filter=lfs diff=lfs merge=lfs -text
6
+ *.ftz filter=lfs diff=lfs merge=lfs -text
7
+ *.gz filter=lfs diff=lfs merge=lfs -text
8
+ *.h5 filter=lfs diff=lfs merge=lfs -text
9
+ *.joblib filter=lfs diff=lfs merge=lfs -text
10
+ *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
+ *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
+ *.model filter=lfs diff=lfs merge=lfs -text
13
+ *.msgpack filter=lfs diff=lfs merge=lfs -text
14
+ *.npy filter=lfs diff=lfs merge=lfs -text
15
+ *.npz filter=lfs diff=lfs merge=lfs -text
16
+ *.onnx filter=lfs diff=lfs merge=lfs -text
17
+ *.ot filter=lfs diff=lfs merge=lfs -text
18
+ *.parquet filter=lfs diff=lfs merge=lfs -text
19
+ *.pb filter=lfs diff=lfs merge=lfs -text
20
+ *.pickle filter=lfs diff=lfs merge=lfs -text
21
+ *.pkl filter=lfs diff=lfs merge=lfs -text
22
+ *.pt filter=lfs diff=lfs merge=lfs -text
23
+ *.pth filter=lfs diff=lfs merge=lfs -text
24
+ *.rar filter=lfs diff=lfs merge=lfs -text
25
+ *.safetensors filter=lfs diff=lfs merge=lfs -text
26
+ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
+ *.tar.* filter=lfs diff=lfs merge=lfs -text
28
+ *.tar filter=lfs diff=lfs merge=lfs -text
29
+ *.tflite filter=lfs diff=lfs merge=lfs -text
30
+ *.tgz filter=lfs diff=lfs merge=lfs -text
31
+ *.wasm filter=lfs diff=lfs merge=lfs -text
32
+ *.xz filter=lfs diff=lfs merge=lfs -text
33
+ *.zip filter=lfs diff=lfs merge=lfs -text
34
+ *.zst filter=lfs diff=lfs merge=lfs -text
35
+ *tfevents* filter=lfs diff=lfs merge=lfs -text
app.py ADDED
@@ -0,0 +1,72 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ from transformers import AutoModelForCausalLM, AutoTokenizer
3
+
4
+ # -----------------------------
5
+ # Model setup
6
+ # -----------------------------
7
+ model_name = "moses132/dailydialog-chatbot"
8
+ tokenizer = AutoTokenizer.from_pretrained(model_name)
9
+ model = AutoModelForCausalLM.from_pretrained(model_name)
10
+
11
+ # -----------------------------
12
+ # Chat function
13
+ # -----------------------------
14
+ chat_history = []
15
+
16
+ def moses_chat(user_message):
17
+ # Add user message to history
18
+ chat_history.append(f"User: {user_message}")
19
+
20
+ # Build prompt from chat history
21
+ prompt = "\n".join(chat_history) + "\nAI:"
22
+
23
+ # Encode input
24
+ inputs = tokenizer.encode(prompt, return_tensors="pt")
25
+
26
+ # Generate model output
27
+ outputs = model.generate(
28
+ inputs,
29
+ max_length=200,
30
+ do_sample=True,
31
+ top_p=0.9,
32
+ temperature=0.8,
33
+ pad_token_id=tokenizer.eos_token_id
34
+ )
35
+
36
+ # Decode reply
37
+ reply = tokenizer.decode(outputs[0], skip_special_tokens=True)
38
+ reply_text = reply.replace(prompt, "").strip()
39
+
40
+ # Add AI reply to history
41
+ chat_history.append(f"AI: {reply_text}")
42
+
43
+ # Return all messages as chat bubbles
44
+ messages = []
45
+ for i, msg in enumerate(chat_history):
46
+ if msg.startswith("User:"):
47
+ messages.append(("User", msg.replace("User:","").strip()))
48
+ else:
49
+ messages.append(("AI", msg.replace("AI:","").strip()))
50
+ return messages
51
+
52
+ # -----------------------------
53
+ # Gradio Interface
54
+ # -----------------------------
55
+ with gr.Blocks(title="Moses Chat") as demo:
56
+ gr.Markdown("<h1 style='text-align:center; color:#4B0082;'>Moses Chat</h1>")
57
+
58
+ with gr.Row():
59
+ chatbot = gr.Chatbot(elem_id="moses-chatbot").style(height=500)
60
+
61
+ with gr.Row():
62
+ msg = gr.Textbox(placeholder="Type your message here...", lines=1)
63
+ submit = gr.Button("Send")
64
+
65
+ def respond(message):
66
+ return moses_chat(message)
67
+
68
+ submit.click(respond, inputs=msg, outputs=chatbot)
69
+ msg.submit(respond, inputs=msg, outputs=chatbot)
70
+
71
+ # Launch the app
72
+ demo.launch()
config.json ADDED
@@ -0,0 +1,48 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_num_labels": 1,
3
+ "activation_function": "gelu_new",
4
+ "add_cross_attention": false,
5
+ "architectures": [
6
+ "GPT2LMHeadModel"
7
+ ],
8
+ "attn_pdrop": 0.1,
9
+ "bos_token_id": 50256,
10
+ "dtype": "float32",
11
+ "embd_pdrop": 0.1,
12
+ "eos_token_id": 50256,
13
+ "id2label": {
14
+ "0": "LABEL_0"
15
+ },
16
+ "initializer_range": 0.02,
17
+ "label2id": {
18
+ "LABEL_0": 0
19
+ },
20
+ "layer_norm_epsilon": 1e-05,
21
+ "model_type": "gpt2",
22
+ "n_ctx": 1024,
23
+ "n_embd": 768,
24
+ "n_head": 12,
25
+ "n_inner": null,
26
+ "n_layer": 6,
27
+ "n_positions": 1024,
28
+ "pad_token_id": null,
29
+ "reorder_and_upcast_attn": false,
30
+ "resid_pdrop": 0.1,
31
+ "scale_attn_by_inverse_layer_idx": false,
32
+ "scale_attn_weights": true,
33
+ "summary_activation": null,
34
+ "summary_first_dropout": 0.1,
35
+ "summary_proj_to_labels": true,
36
+ "summary_type": "cls_index",
37
+ "summary_use_proj": true,
38
+ "task_specific_params": {
39
+ "text-generation": {
40
+ "do_sample": true,
41
+ "max_length": 50
42
+ }
43
+ },
44
+ "tie_word_embeddings": true,
45
+ "transformers_version": "5.3.0",
46
+ "use_cache": false,
47
+ "vocab_size": 50257
48
+ }
generation_config.json ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ {
2
+ "_from_model_config": true,
3
+ "bos_token_id": 50256,
4
+ "eos_token_id": 50256,
5
+ "transformers_version": "5.3.0"
6
+ }
model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:adfe81e8c2b37f28ae44d3181cd0713d9c686da45b46f8332561313d8281ec9a
3
+ size 327657928
tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
tokenizer_config.json ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_prefix_space": false,
3
+ "backend": "tokenizers",
4
+ "bos_token": "<|endoftext|>",
5
+ "eos_token": "<|endoftext|>",
6
+ "errors": "replace",
7
+ "is_local": false,
8
+ "model_max_length": 1024,
9
+ "pad_token": "<|endoftext|>",
10
+ "tokenizer_class": "GPT2Tokenizer",
11
+ "unk_token": "<|endoftext|>"
12
+ }
training_args.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3df1b297665771cac3a0d43a9e04d5208aafddd9e50629e3094e7f80a6fa7d57
3
+ size 5201