diff --git a/frontend/src/pages/lab/Home.vue b/frontend/src/pages/lab/Home.vue
index 6ae0ff4..5eee040 100644
--- a/frontend/src/pages/lab/Home.vue
+++ b/frontend/src/pages/lab/Home.vue
@@ -33,6 +33,20 @@ export default {
summary_text: 'Translate lanuages leverage AI power',
icon_picture: '',
cover_picture: cover_picture
+ },
+ {
+ path: 'task-completion',
+ title_text: 'Task Completion',
+ summary_text: 'Respone for a user prompty',
+ icon_picture: '',
+ cover_picture: cover_picture
+ },
+ {
+ path: 'multiturn-chat',
+ title_text: 'Multi turn chat',
+ summary_text: 'Respone based on multi turn messages ',
+ icon_picture: '',
+ cover_picture: cover_picture
}
]
}
diff --git a/frontend/src/pages/lab/openai/MultiturnChat.vue b/frontend/src/pages/lab/openai/MultiturnChat.vue
new file mode 100644
index 0000000..5d2a18f
--- /dev/null
+++ b/frontend/src/pages/lab/openai/MultiturnChat.vue
@@ -0,0 +1,59 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/frontend/src/pages/lab/openai/TaskCompletion.vue b/frontend/src/pages/lab/openai/TaskCompletion.vue
new file mode 100644
index 0000000..6147496
--- /dev/null
+++ b/frontend/src/pages/lab/openai/TaskCompletion.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 53f19bc..6af7f36 100644
--- a/frontend/src/plugins/router/router.js
+++ b/frontend/src/plugins/router/router.js
@@ -66,7 +66,8 @@ import HeaderUser from '@/headers/HeaderUser.vue'
//Lab
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'
const router = createRouter({
history: createWebHistory(),
routes: [
@@ -389,8 +390,19 @@ const router = createRouter({
path: '/machine-translation',
meta: { requiredRoles: [userRoleEnum.PERSONAL] },
components: { default: TranslationHome, footer: FooterUser, header: HeaderUser }
- }
- ],
+ },
+ {
+ name: 'task-completion',
+ path: '/task-completion',
+ meta: { requiredRoles: [userRoleEnum.PERSONAL] },
+ components: { default: TaskCompletion, footer: FooterUser, header: HeaderUser }
+ },
+ {
+ name: 'multiturn-chat',
+ path: '/multiturn-chat',
+ meta: { requiredRoles: [userRoleEnum.PERSONAL] },
+ components: { default: MultiturnChat, 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 eb493f3..d2abd3e 100644
--- a/frontend/src/utils/backend/lab.js
+++ b/frontend/src/utils/backend/lab.js
@@ -14,5 +14,33 @@ class LabApi {
)
return request
}
+ static task_completion(prompt) {
+ let jwt = userUtils.getJwtToken()
+ const request = backendAxios.post(
+ '/api/lab/openai-completion',
+ {
+ user_prompt: prompt
+ },
+ {
+ headers: { Authorization: `Bearer ${jwt}` }
+ }
+ )
+ return request
+ }
+
+ static multiturn_chat(messages) {
+ let jwt = userUtils.getJwtToken()
+ const request = backendAxios.post(
+ '/api/lab/openai-chat',
+ {
+ messages: messages
+ },
+ {
+ headers: { Authorization: `Bearer ${jwt}` }
+ }
+ )
+ return request
+
+ }
}
export { LabApi }