diff --git a/frontend/src/pages/lab/Home.vue b/frontend/src/pages/lab/Home.vue
index 5eee040..8eb19ed 100644
--- a/frontend/src/pages/lab/Home.vue
+++ b/frontend/src/pages/lab/Home.vue
@@ -47,6 +47,13 @@ export default {
summary_text: 'Respone based on multi turn messages ',
icon_picture: '',
cover_picture: cover_picture
+ },
+ {
+ path: 'image-generation',
+ title_text: 'image generation',
+ summary_text: 'Generate a image based on user prompt',
+ icon_picture: '',
+ cover_picture: cover_picture
}
]
}
diff --git a/frontend/src/pages/lab/openai/ImageGeneration.vue b/frontend/src/pages/lab/openai/ImageGeneration.vue
new file mode 100644
index 0000000..6d25e04
--- /dev/null
+++ b/frontend/src/pages/lab/openai/ImageGeneration.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/frontend/src/plugins/router/router.js b/frontend/src/plugins/router/router.js
index 6af7f36..5e5314e 100644
--- a/frontend/src/plugins/router/router.js
+++ b/frontend/src/plugins/router/router.js
@@ -68,6 +68,8 @@ import LabHome from '@/pages/lab/Home.vue'
import TranslationHome from '@/pages/lab/translation/Home.vue'
import TaskCompletion from '@/pages/lab/openai/TaskCompletion.vue'
import MultiturnChat from '@/pages/lab/openai/MultiturnChat.vue'
+import ImageGeneration from '@/pages/lab/openai/ImageGeneration.vue'
+
const router = createRouter({
history: createWebHistory(),
routes: [
@@ -402,7 +404,14 @@ const router = createRouter({
path: '/multiturn-chat',
meta: { requiredRoles: [userRoleEnum.PERSONAL] },
components: { default: MultiturnChat, footer: FooterUser, header: HeaderUser }
- }],
+ },
+ {
+ name: 'image-generation',
+ path: '/image-generation',
+ meta: { requiredRoles: [userRoleEnum.PERSONAL] },
+ components: { default: ImageGeneration, footer: FooterUser, header: HeaderUser }
+ }
+ ],
linkActiveClass: 'active'
/* scrollBehavior(_, _2, savedPosition) {
diff --git a/frontend/src/utils/backend/lab.js b/frontend/src/utils/backend/lab.js
index d2abd3e..a8f76b4 100644
--- a/frontend/src/utils/backend/lab.js
+++ b/frontend/src/utils/backend/lab.js
@@ -27,6 +27,19 @@ class LabApi {
)
return request
}
+ static image_generation(prompt) {
+ let jwt = userUtils.getJwtToken()
+ const request = backendAxios.post(
+ '/api/lab/generate-image',
+ {
+ user_prompt: prompt
+ },
+ {
+ headers: { Authorization: `Bearer ${jwt}` }
+ }
+ )
+ return request
+ }
static multiturn_chat(messages) {
let jwt = userUtils.getJwtToken()