markpdfdown 0.1.8-beta.6 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/dist/main/index.js +398 -14
  2. package/dist/preload/index.js +20 -1
  3. package/dist/renderer/assets/{index-yTU2skrN.css → index-B_JfRqwM.css} +54 -0
  4. package/dist/renderer/assets/{index-iEK8qT5k.js → index-wHB9i2kW.js} +623 -320
  5. package/dist/renderer/index.html +2 -2
  6. package/package.json +10 -3
  7. package/dist/app/app.js +0 -49
  8. package/dist/app/controllers/completionController.js +0 -19
  9. package/dist/app/controllers/modelController.js +0 -53
  10. package/dist/app/controllers/providerController.js +0 -120
  11. package/dist/app/dal/modelDal.js +0 -44
  12. package/dist/app/dal/providerDal.js +0 -78
  13. package/dist/app/db/index.js +0 -56
  14. package/dist/app/db/migration.js +0 -157
  15. package/dist/app/logic/llm/AnthropicClient.js +0 -219
  16. package/dist/app/logic/llm/AzureOpenAIClient.js +0 -239
  17. package/dist/app/logic/llm/GeminiClient.js +0 -212
  18. package/dist/app/logic/llm/LLMClient.js +0 -80
  19. package/dist/app/logic/llm/OpenAIClient.js +0 -235
  20. package/dist/app/logic/llm/example-advanced.js +0 -232
  21. package/dist/app/logic/llm/index.js +0 -14
  22. package/dist/app/logic/model.js +0 -27
  23. package/dist/app/middleware/logger.js +0 -23
  24. package/dist/app/routes/routes.js +0 -16
  25. package/dist/app/types/Provider.js +0 -1
  26. package/dist/server/controllers/FileController.js +0 -64
  27. package/dist/server/controllers/TaskController.js +0 -57
  28. package/dist/server/controllers/completionController.js +0 -64
  29. package/dist/server/controllers/modelController.js +0 -74
  30. package/dist/server/controllers/providerController.js +0 -120
  31. package/dist/server/dal/TaskDal.js +0 -67
  32. package/dist/server/dal/modelDal.js +0 -44
  33. package/dist/server/dal/providerDal.js +0 -83
  34. package/dist/server/db/index.js +0 -57
  35. package/dist/server/db/migration.js +0 -157
  36. package/dist/server/index.js +0 -49
  37. package/dist/server/logic/File.js +0 -34
  38. package/dist/server/logic/Task.js +0 -21
  39. package/dist/server/logic/llm/AnthropicClient.js +0 -220
  40. package/dist/server/logic/llm/AzureOpenAIClient.js +0 -239
  41. package/dist/server/logic/llm/GeminiClient.js +0 -213
  42. package/dist/server/logic/llm/LLMClient.js +0 -83
  43. package/dist/server/logic/llm/OllamaClient.js +0 -220
  44. package/dist/server/logic/llm/OpenAIClient.js +0 -235
  45. package/dist/server/logic/llm/example-advanced.js +0 -231
  46. package/dist/server/logic/llm/index.js +0 -15
  47. package/dist/server/logic/model.js +0 -59
  48. package/dist/server/middleware/logger.js +0 -23
  49. package/dist/server/routes/routes.js +0 -30
  50. package/dist/server/types/Provider.js +0 -1
  51. package/dist/server/types/Task.js +0 -1
@@ -1,15 +0,0 @@
1
- /**
2
- * LLM客户端模块导出
3
- */
4
- // 导出接口和基类
5
- export { LLMClient, LLMClientFactory } from './LLMClient.js';
6
- // 导出具体实现类
7
- export { OpenAIClient } from './OpenAIClient.js';
8
- export { AzureOpenAIClient } from './AzureOpenAIClient.js';
9
- export { GeminiClient } from './GeminiClient.js';
10
- export { AnthropicClient } from './AnthropicClient.js';
11
- export { OllamaClient } from './OllamaClient.js';
12
- // 导入工厂类以供默认导出
13
- import { LLMClientFactory } from './LLMClient.js';
14
- // 默认导出工厂类
15
- export default LLMClientFactory;
@@ -1,59 +0,0 @@
1
- // @ts-ignore
2
- import providerDal from '../dal/ProviderDal.js';
3
- import { LLMClientFactory } from './llm/LLMClient.js';
4
- import sharp from 'sharp';
5
- // 根据服务商ID获取LLM客户端
6
- const getLLMClient = async (providerId) => {
7
- const provider = await providerDal.findById(providerId);
8
- if (!provider) {
9
- throw new Error('服务商不存在');
10
- }
11
- return LLMClientFactory.createClient(provider.type || '', provider.api_key || '', `${provider.base_url || ''}${provider.suffix || ''}`);
12
- };
13
- // 补全请求
14
- const completion = async (providerId, options) => {
15
- const llmClient = await getLLMClient(providerId);
16
- return llmClient.completion(options);
17
- };
18
- // 输入图片文件路径,返回图片的base64编码
19
- const getImageBase64 = async (imagePath) => {
20
- const image = sharp(imagePath);
21
- return image.toBuffer();
22
- };
23
- // 输入图片文件路径,构造Message
24
- const transformImageMessage = async (imagePath) => {
25
- const imageBase64 = await getImageBase64(imagePath);
26
- const message = [{
27
- role: 'system',
28
- content: {
29
- type: 'text',
30
- text: 'You are a helpful assistant that can convert images to Markdown format. You are given an image, and you need to convert it to Markdown format. Please output the Markdown content only, without any other text.'
31
- }
32
- }];
33
- message.push({
34
- role: 'user',
35
- content: [
36
- {
37
- type: 'text',
38
- text: `Below is the image of one page of a document, please read the content in the image and transcribe it into plain Markdown format. Please note:
39
- 1. Identify heading levels, text styles, formulas, and the format of table rows and columns
40
- 2. Mathematical formulas should be transcribed using LaTeX syntax, ensuring consistency with the original
41
- 3. Please output the Markdown content only, without any other text.
42
-
43
- Output Example:
44
- \`\`\`markdown
45
- {example}
46
- \`\`\``
47
- },
48
- {
49
- type: 'image_url',
50
- image_url: { url: `data:image/jpeg;base64,${imageBase64}` }
51
- }
52
- ]
53
- });
54
- return message;
55
- };
56
- export default {
57
- completion,
58
- transformImageMessage
59
- };
@@ -1,23 +0,0 @@
1
- /**
2
- * 请求日志中间件
3
- * 记录所有API请求的信息
4
- */
5
- const requestLogger = (req, res, next) => {
6
- const start = Date.now();
7
- // 请求完成后记录日志信息
8
- res.on('finish', () => {
9
- const duration = Date.now() - start;
10
- console.log(`[${new Date().toISOString()}] ${req.method} ${req.originalUrl} ${res.statusCode} - ${duration}ms`);
11
- });
12
- next();
13
- };
14
- /**
15
- * 错误日志中间件
16
- * 记录API错误信息
17
- */
18
- const errorLogger = (err, _req, _res, next) => {
19
- console.error(`[${new Date().toISOString()}] 错误: ${err.message}`);
20
- console.error(err.stack);
21
- next(err);
22
- };
23
- export { requestLogger, errorLogger };
@@ -1,30 +0,0 @@
1
- import express from 'express';
2
- import providerController from '../controllers/ProviderController.js';
3
- import modelController from '../controllers/ModelController.js';
4
- import completionController from '../controllers/CompletionController.js';
5
- import taskController from '../controllers/TaskController.js';
6
- import fileController from '../controllers/FileController.js';
7
- const router = express.Router();
8
- // 服务商路由
9
- router.get('/providers', providerController.getAllProviders);
10
- router.get('/providers/:id', providerController.getProviderById);
11
- router.post('/providers', providerController.createProvider);
12
- router.put('/providers/:id', providerController.updateProvider);
13
- router.delete('/providers/:id', providerController.deleteProvider);
14
- router.put('/providers/:id/status', providerController.updateProviderStatus);
15
- // 模型路由
16
- router.get('/models', modelController.getAllModels);
17
- router.get('/models/:provider', modelController.getModelsByProviderId);
18
- router.post('/models', modelController.createModel);
19
- router.delete('/models/:id/:provider', modelController.deleteModel);
20
- // 任务路由
21
- router.post('/tasks', taskController.createTasks);
22
- router.get('/tasks', taskController.getAllTasks);
23
- router.put('/tasks/:id', taskController.updateTask);
24
- router.delete('/tasks/:id', taskController.deleteTask);
25
- // 文件上传路由
26
- router.post('/upload', fileController.uploadFiles);
27
- // 对话接口路由
28
- router.post('/markimagedown', completionController.markImagedown);
29
- router.post('/try', completionController.testConnection);
30
- export default router;
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};