Dacho688 commited on
Commit
a1be0f8
·
0 Parent(s):

Initial commit

Browse files
Files changed (5) hide show
  1. .gitattributes +35 -0
  2. README.md +14 -0
  3. app.py +81 -0
  4. requirements.txt +1 -0
  5. users_database.db +0 -0
.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
README.md ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Image Chatbot (llava-v1.6-mistral-7b)
3
+ emoji: 🖼️
4
+ colorFrom: blue
5
+ colorTo: yellow
6
+ sdk: gradio
7
+ sdk_version: 4.22.0
8
+ app_file: app.py
9
+ pinned: false
10
+ license: apache-2.0
11
+ short_description: Huggingface Gradio Demo (Llava Next Image Chatbot)
12
+ ---
13
+
14
+ The above yml frontmatter is required for Huggingface spaces configurations. Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
app.py ADDED
@@ -0,0 +1,81 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # -*- coding: utf-8 -*-
2
+ """
3
+ Created on Wed Sep 3 19:32:57 2025
4
+
5
+ @author: rkram
6
+ """
7
+
8
+ import sqlite3
9
+ import gradio as gr
10
+
11
+ DB_FILE = "./users_database.db"
12
+
13
+ def initialize_db():
14
+ conn = sqlite3.connect(DB_FILE)
15
+ cursor = conn.cursor()
16
+ cursor.execute('''
17
+ CREATE TABLE IF NOT EXISTS users (
18
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
19
+ name TEXT NOT NULL,
20
+ email TEXT UNIQUE NOT NULL
21
+ )
22
+ ''')
23
+ conn.commit()
24
+ conn.close()
25
+
26
+ initialize_db() # Call this once when your application starts
27
+
28
+ def add_user(name, email):
29
+ conn = sqlite3.connect(DB_FILE)
30
+ cursor = conn.cursor()
31
+ if len(name)==0:
32
+ name=None
33
+ if len(email)==0:
34
+ email=None
35
+ try:
36
+ cursor.execute("INSERT INTO users (name, email) VALUES (?, ?)", (name, email))
37
+ conn.commit()
38
+ return "User added successfully!"
39
+ except sqlite3.IntegrityError as e:
40
+ if "UNIQUE" in e.args[0]:
41
+ err = "Error: Email already exists."
42
+ return err
43
+ elif "NOT NULL" in e.args[0]:
44
+ if "email" in e.args[0]:
45
+ return "Error: Email can't be blank."
46
+ elif "name" in e.args[0]:
47
+ return "Error: Name can't be blank."
48
+ else:
49
+ return f"Error: {e}"
50
+ except Exception as e:
51
+ return e
52
+ finally:
53
+ conn.close()
54
+
55
+ def get_users():
56
+ conn = sqlite3.connect(DB_FILE)
57
+ cursor = conn.cursor()
58
+ cursor.execute("SELECT name, email FROM users")
59
+ column_names = [description[0] for description in cursor.description]
60
+ users = cursor.fetchall()
61
+ table = gr.DataFrame(users,headers=column_names)
62
+ conn.close()
63
+ return table
64
+
65
+ with gr.Blocks() as demo:
66
+ gr.Markdown("## User Management with SQLite")
67
+ with gr.Row():
68
+ name_input = gr.Textbox(label="Name")
69
+ email_input = gr.Textbox(label="Email")
70
+ add_button = gr.Button("Add User")
71
+
72
+ output_message = gr.Textbox(label="Status")
73
+
74
+ gr.Markdown("### Current Users")
75
+ users_table = gr.Dataframe()
76
+ demo.load(get_users, outputs=users_table) #get users on app launch
77
+ add_button.click(add_user, inputs=[name_input, email_input], outputs=output_message)\
78
+ .then(get_users,outputs=users_table)
79
+
80
+ if __name__ == "__main__":
81
+ demo.launch()
requirements.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ gradio==5.25.2
users_database.db ADDED
Binary file (16.4 kB). View file