1
1
import pdf from 'pdf-parse-fork'
2
- import { REDIS_HOST , REDIS_PORT } from './config'
2
+ import axios from 'axios'
3
+ import { LAAMA_API_TOKEN , REDIS_HOST , REDIS_PORT } from './config'
3
4
import { Queue , QueueEvents , Worker , Job } from 'bullmq'
4
5
6
+ const dalaiClient = axios . create ( {
7
+ baseURL : "https://api-gateway-toska.apps.ocp-bm-0.k8s.it.helsinki.fi/dalai" ,
8
+ params : {
9
+ token : LAAMA_API_TOKEN ,
10
+ } ,
11
+ } )
12
+
5
13
export const pdfToText = async ( fileBuffer : Buffer ) => {
6
14
try {
7
15
const data = await pdf ( fileBuffer )
@@ -13,32 +21,37 @@ export const pdfToText = async (fileBuffer: Buffer) => {
13
21
}
14
22
}
15
23
16
- const connection = {
17
- host : REDIS_HOST ,
18
- port : REDIS_PORT ,
19
- }
24
+ // const connection = {
25
+ // host: REDIS_HOST,
26
+ // port: REDIS_PORT,
27
+ // }
20
28
21
- const vlmQueue = new Queue ( 'vlm-pdf-processing' , { connection } )
22
- const vlmQueueEvents = new QueueEvents ( 'vlm-pdf-processing' , { connection } )
29
+ // const vlmQueue = new Queue('vlm-pdf-processing', { connection })
30
+ // const vlmQueueEvents = new QueueEvents('vlm-pdf-processing', { connection })
23
31
24
- const vlmWorker = new Worker (
25
- 'vlm-pdf-processing' ,
26
- async ( job : Job ) => {
27
- const { pdfBuffer } = job . data
28
- const result = await pdfToText ( pdfBuffer )
32
+ // const vlmWorker = new Worker(
33
+ // 'vlm-pdf-processing',
34
+ // async (job: Job) => {
35
+ // const { pdfBuffer } = job.data
36
+ // const result = await dalaiClient.post (pdfBuffer)
29
37
30
- return result
31
- } ,
32
- { connection, autorun : false } ,
33
- )
38
+ // return result
39
+ // },
40
+ // { connection, autorun: false },
41
+ // )
34
42
35
43
export const pdfToTextWithVLM = async ( fileBuffer : Buffer ) => {
36
- const job = await vlmQueue . add ( 'vlm-pdf-processing' , {
37
- pdfBuffer : fileBuffer ,
38
- } )
44
+ const form = new FormData ( )
39
45
40
- const result = await job . waitUntilFinished ( vlmQueueEvents )
41
- return result
42
- }
46
+ const pdfBlob = new Blob ( [ fileBuffer ] , { type : "application/pdf" } )
47
+ form . append ( 'file' , pdfBlob , 'file.pdf' )
48
+
49
+ const response = await dalaiClient . post (
50
+ '/scan' ,
51
+ form ,
52
+ // @ts -ignore
53
+ { headers : { } }
54
+ )
43
55
44
- vlmWorker . run ( )
56
+ return response . data
57
+ }
0 commit comments