返回 AiToEarn
config.yaml
1 port: 3010
2 enableConfigLogging: false
3 enableBadRequestDetails: false
4 logger:
5 console:
6 enable: true
7 level: debug
8 pretty: false
9 singleLine: false
10 translateTime: true
11 appDomain: ""
12 auth:
13 secret: change-this-jwt-secret
14 internalToken: change-this-secret-token
15 redis:
16 host: redis
17 port: 6379
18 username: default
19 password: password
20 mongodb:
21 uri: mongodb://admin:password@mongodb:27017/?authSource=admin&directConnection=true
22 dbName: aitoearn
23 redlock:
24 redis:
25 host: redis
26 port: 6379
27 username: default
28 password: password
29 ttl: 300
30 retryDelay: 1000
31 retryCount: 3
32 serverClient:
33 baseUrl: http://aitoearn-server:3002
34 assets:
35 region: us-east-1
36 accessKeyId: rustfsadmin
37 secretAccessKey: rustfsadmin
38 bucketName: aitoearn
39 endpoint: http://rustfs.local:9000
40 cdnEndpoint: http://localhost:8080/oss
41 signExpires: 300
42 forcePathStyle: true
43 publicEndpoint: http://localhost:9000
44 provider: s3
45 ai:
46 models:
47 chat:
48 - name: gemini-3.1-pro-preview
49 description: Gemini 3.1 Pro Preview
50 tags: []
51 channel: gemini
52 scenes:
53 - web
54 - comment
55 - draft-generation
56 inputModalities:
57 - text
58 - image
59 - audio
60 - video
61 outputModalities:
62 - text
63 - name: gemini-3.5-flash
64 description: Gemini 3.5 Flash
65 tags: []
66 channel: gemini
67 scenes:
68 - web
69 - comment
70 - draft-generation
71 inputModalities:
72 - text
73 - image
74 - audio
75 - video
76 outputModalities:
77 - text
78 - name: gemini-3.1-flash-image-preview
79 description: Nano Banana 2
80 tags:
81 - en-US: Sale
82 zh-CN: 限时
83 channel: gemini
84 scenes: []
85 inputModalities:
86 - text
87 - image
88 outputModalities:
89 - image
90 - name: gemini-3-pro-image-preview
91 description: Nano Banana Pro
92 tags: []
93 channel: gemini
94 scenes: []
95 inputModalities:
96 - text
97 - image
98 outputModalities:
99 - image
100 - name: claude-opus-4-6
101 description: Claude Opus 4.6
102 tags: []
103 channel: anthropic
104 scenes:
105 - web
106 inputModalities:
107 - text
108 - image
109 outputModalities:
110 - text
111 - name: claude-sonnet-4-6
112 description: Claude Sonnet 4.6
113 tags: []
114 channel: anthropic
115 scenes:
116 - web
117 inputModalities:
118 - text
119 - image
120 outputModalities:
121 - text
122 - name: gpt-5.4
123 description: GPT 5.4
124 tags:
125 - en-US: Sale
126 zh-CN: 限时
127 channel: openai
128 scenes:
129 - comment
130 inputModalities:
131 - text
132 - image
133 outputModalities:
134 - text
135 - name: gpt-5.5
136 description: GPT 5.5
137 tags:
138 - en-US: Sale
139 zh-CN: 限时
140 channel: openai
141 scenes:
142 - web
143 - comment
144 - draft-generation
145 inputModalities:
146 - text
147 - image
148 outputModalities:
149 - text
150 - name: deepseek-v4-pro
151 description: DeepSeek V4 Pro
152 tags: []
153 channel: deepseek
154 scenes:
155 - web
156 - plugin
157 - comment
158 - draft-generation
159 inputModalities:
160 - text
161 outputModalities:
162 - text
163 image:
164 generation:
165 - name: gpt-image-2
166 description: GPT Image 2
167 tags:
168 - en-US: Sale
169 zh-CN: 限时
170 retry: 1
171 sizes:
172 - 1024x1024
173 - 1536x1024
174 - 1024x1536
175 - 1408x1056
176 - 1056x1408
177 - 1360x1088
178 - 1088x1360
179 - 1536x864
180 - 864x1536
181 - 1920x1920
182 - 2304x1536
183 - 1536x2304
184 - 2176x1632
185 - 1632x2176
186 - 2080x1664
187 - 1664x2080
188 - 2560x1440
189 - 1440x2560
190 - 2880x2880
191 - 3504x2336
192 - 2336x3504
193 - 3264x2448
194 - 2448x3264
195 - 3200x2560
196 - 2560x3200
197 - 3840x2160
198 - 2160x3840
199 qualities:
200 - auto
201 - high
202 - medium
203 - low
204 styles: []
205 edit:
206 - name: gpt-image-2
207 description: GPT Image 2
208 tags:
209 - en-US: Sale
210 zh-CN: 限时
211 retry: 1
212 sizes:
213 - 1024x1024
214 - 1536x1024
215 - 1024x1536
216 - 1408x1056
217 - 1056x1408
218 - 1360x1088
219 - 1088x1360
220 - 1536x864
221 - 864x1536
222 - 1920x1920
223 - 2304x1536
224 - 1536x2304
225 - 2176x1632
226 - 1632x2176
227 - 2080x1664
228 - 1664x2080
229 - 2560x1440
230 - 1440x2560
231 - 2880x2880
232 - 3504x2336
233 - 2336x3504
234 - 3264x2448
235 - 2448x3264
236 - 3200x2560
237 - 2560x3200
238 - 3840x2160
239 - 2160x3840
240 maxInputImages: 16
241 video:
242 generation:
243 - name: seedance-2-fast-beta
244 description: Seedance 2.0 Fast Beta
245 tags:
246 - en-US: Sale
247 zh-CN: 限时
248 - en-US: Supports human subject video generation
249 zh-CN: 支持真人素材生成
250 - en-US: Input videos do not count toward tokens
251 zh-CN: 输入视频免计算token
252 channel: relay
253 retry: 1
254 modes:
255 - text2video
256 - image2video
257 - multi-image2video
258 - multi-ref
259 resolutions:
260 - 480p
261 - 720p
262 durations:
263 - 4
264 - 5
265 - 6
266 - 7
267 - 8
268 - 9
269 - 10
270 - 11
271 - 12
272 - 13
273 - 14
274 - 15
275 maxInputImages: 9
276 inputConstraints:
277 images:
278 maxCount: 9
279 videos:
280 maxCount: 3
281 formats:
282 - mp4
283 - mov
284 minDuration: 2
285 maxDuration: 15
286 maxTotalDuration: 15
287 maxSizeMb: 50
288 minAspectRatio: 0.4
289 maxAspectRatio: 2.5
290 minWidth: 300
291 maxWidth: 6000
292 minPixels: 409600
293 maxPixels: 2086876
294 minFps: 24
295 maxFps: 60
296 audios:
297 maxCount: 3
298 formats:
299 - wav
300 - mp3
301 minDuration: 2
302 maxDuration: 15
303 maxTotalDuration: 15
304 maxSizeMb: 15
305 aspectRatios:
306 - 21:9
307 - 16:9
308 - 4:3
309 - 1:1
310 - 3:4
311 - 9:16
312 defaults:
313 resolution: 720p
314 aspectRatio: 16:9
315 duration: 6
316 - name: seedance-2-beta
317 description: Seedance 2.0 Beta
318 tags:
319 - en-US: Sale
320 zh-CN: 限时
321 - en-US: Supports human subject video generation
322 zh-CN: 支持真人素材生成
323 - en-US: Input videos do not count toward tokens
324 zh-CN: 输入视频免计算token
325 channel: relay
326 retry: 1
327 modes:
328 - text2video
329 - image2video
330 - multi-image2video
331 - multi-ref
332 resolutions:
333 - 720p
334 durations:
335 - 4
336 - 5
337 - 6
338 - 7
339 - 8
340 - 9
341 - 10
342 - 11
343 - 12
344 - 13
345 - 14
346 - 15
347 maxInputImages: 9
348 inputConstraints:
349 images:
350 maxCount: 9
351 videos:
352 maxCount: 3
353 formats:
354 - mp4
355 - mov
356 minDuration: 2
357 maxDuration: 15
358 maxTotalDuration: 15
359 maxSizeMb: 50
360 minAspectRatio: 0.4
361 maxAspectRatio: 2.5
362 minWidth: 300
363 maxWidth: 6000
364 minPixels: 409600
365 maxPixels: 2086876
366 minFps: 24
367 maxFps: 60
368 audios:
369 maxCount: 3
370 formats:
371 - wav
372 - mp3
373 minDuration: 2
374 maxDuration: 15
375 maxTotalDuration: 15
376 maxSizeMb: 15
377 aspectRatios:
378 - 21:9
379 - 16:9
380 - 4:3
381 - 1:1
382 - 3:4
383 - 9:16
384 defaults:
385 resolution: 720p
386 aspectRatio: 16:9
387 duration: 6
388 - name: seedance-2-beta-1080p
389 description: Seedance 2.0 Beta 1080p
390 tags:
391 - en-US: Sale
392 zh-CN: 限时
393 - en-US: Supports human subject video generation
394 zh-CN: 支持真人素材生成
395 - en-US: Input videos do not count toward tokens
396 zh-CN: 输入视频免计算token
397 channel: relay
398 retry: 1
399 modes:
400 - text2video
401 - image2video
402 - multi-image2video
403 - multi-ref
404 resolutions:
405 - 1080p
406 durations:
407 - 8
408 - 9
409 - 10
410 - 11
411 - 12
412 - 13
413 - 14
414 - 15
415 maxInputImages: 9
416 inputConstraints:
417 images:
418 maxCount: 9
419 videos:
420 maxCount: 3
421 formats:
422 - mp4
423 - mov
424 minDuration: 2
425 maxDuration: 15
426 maxTotalDuration: 15
427 maxSizeMb: 50
428 minAspectRatio: 0.4
429 maxAspectRatio: 2.5
430 minWidth: 300
431 maxWidth: 6000
432 minPixels: 409600
433 maxPixels: 2086876
434 minFps: 24
435 maxFps: 60
436 audios:
437 maxCount: 3
438 formats:
439 - wav
440 - mp3
441 minDuration: 2
442 maxDuration: 15
443 maxTotalDuration: 15
444 maxSizeMb: 15
445 aspectRatios:
446 - 16:9
447 - 9:16
448 - 1:1
449 defaults:
450 resolution: 1080p
451 aspectRatio: 16:9
452 duration: 8
453 - name: happyhorse-1.1
454 description: HappyHorse 1.1
455 tags: []
456 channel: relay
457 modes:
458 - text2video
459 - image2video
460 - multi-image2video
461 - video2video
462 resolutions:
463 - 720P
464 - 1080P
465 durations:
466 - 3
467 - 4
468 - 5
469 - 6
470 - 7
471 - 8
472 - 9
473 - 10
474 - 11
475 - 12
476 - 13
477 - 14
478 - 15
479 maxInputImages: 9
480 aspectRatios:
481 - 16:9
482 - 9:16
483 - 1:1
484 - 4:3
485 - 3:4
486 defaults:
487 resolution: 720P
488 aspectRatio: 9:16
489 duration: 5
490 - name: doubao-seedance-2-0-260128
491 description: Seedance 2.0
492 tags: []
493 channel: relay
494 modes:
495 - text2video
496 - image2video
497 - flf2video
498 - multi-image2video
499 - multi-ref
500 resolutions:
501 - 720p
502 - 1080p
503 durations:
504 - 4
505 - 5
506 - 6
507 - 7
508 - 8
509 - 9
510 - 10
511 - 11
512 - 12
513 - 13
514 - 14
515 - 15
516 maxInputImages: 9
517 inputConstraints:
518 images:
519 maxCount: 9
520 videos:
521 maxCount: 3
522 formats:
523 - mp4
524 - mov
525 minDuration: 2
526 maxDuration: 15
527 maxTotalDuration: 15
528 maxSizeMb: 50
529 minAspectRatio: 0.4
530 maxAspectRatio: 2.5
531 minWidth: 300
532 maxWidth: 6000
533 minPixels: 409600
534 maxPixels: 2086876
535 minFps: 24
536 maxFps: 60
537 audios:
538 maxCount: 3
539 formats:
540 - wav
541 - mp3
542 minDuration: 2
543 maxDuration: 15
544 maxTotalDuration: 15
545 maxSizeMb: 15
546 aspectRatios:
547 - 16:9
548 - 4:3
549 - 1:1
550 - 3:4
551 - 9:16
552 - 21:9
553 - adaptive
554 defaults:
555 resolution: 720p
556 aspectRatio: adaptive
557 duration: 5
558 - name: doubao-seedance-2-0-fast-260128
559 description: Seedance 2.0 Fast
560 tags: []
561 channel: relay
562 modes:
563 - text2video
564 - image2video
565 - flf2video
566 - multi-image2video
567 - multi-ref
568 resolutions:
569 - 720p
570 durations:
571 - 4
572 - 5
573 - 6
574 - 7
575 - 8
576 - 9
577 - 10
578 - 11
579 - 12
580 - 13
581 - 14
582 - 15
583 maxInputImages: 9
584 inputConstraints:
585 images:
586 maxCount: 9
587 videos:
588 maxCount: 3
589 formats:
590 - mp4
591 - mov
592 minDuration: 2
593 maxDuration: 15
594 maxTotalDuration: 15
595 maxSizeMb: 50
596 minAspectRatio: 0.4
597 maxAspectRatio: 2.5
598 minWidth: 300
599 maxWidth: 6000
600 minPixels: 409600
601 maxPixels: 2086876
602 minFps: 24
603 maxFps: 60
604 audios:
605 maxCount: 3
606 formats:
607 - wav
608 - mp3
609 minDuration: 2
610 maxDuration: 15
611 maxTotalDuration: 15
612 maxSizeMb: 15
613 aspectRatios:
614 - 16:9
615 - 4:3
616 - 1:1
617 - 3:4
618 - 9:16
619 - 21:9
620 - adaptive
621 defaults:
622 resolution: 720p
623 aspectRatio: adaptive
624 duration: 5
625 - name: grok-imagine-video
626 description: Grok Video
627 tags: []
628 channel: relay
629 modes:
630 - text2video
631 - image2video
632 - multi-image2video
633 - video2video
634 resolutions:
635 - 720p
636 durations:
637 - 1
638 - 2
639 - 3
640 - 4
641 - 5
642 - 6
643 - 7
644 - 8
645 - 9
646 - 10
647 - 11
648 - 12
649 - 13
650 - 14
651 - 15
652 maxInputImages: 7
653 aspectRatios:
654 - 1:1
655 - 16:9
656 - 9:16
657 - 4:3
658 - 3:4
659 - 3:2
660 - 2:3
661 defaults:
662 aspectRatio: 9:16
663 duration: 8
664 - name: grok-video-3-10s
665 description: Grok Video 10s
666 tags:
667 - en-US: Sale
668 zh-CN: 限时
669 channel: relay
670 modes:
671 - text2video
672 - image2video
673 - multi-image2video
674 resolutions:
675 - 720p
676 durations:
677 - 10
678 maxInputImages: 5
679 aspectRatios:
680 - 2:3
681 - 3:2
682 - 1:1
683 defaults:
684 aspectRatio: 2:3
685 duration: 10
686 - name: grok-imagine-video-1.5-preview
687 description: Grok Video 1.5 Preview
688 tags:
689 - en-US: Sale
690 zh-CN: 限时
691 channel: relay
692 modes:
693 - image2video
694 resolutions:
695 - 720p
696 durations:
697 - 10
698 - 11
699 - 12
700 - 13
701 - 14
702 - 15
703 maxInputImages: 1
704 aspectRatios:
705 - 2:3
706 - 3:2
707 - 1:1
708 defaults:
709 aspectRatio: 2:3
710 duration: 10
711 - name: grok-imagine-video-1.5
712 description: Grok Video 1.5
713 tags: []
714 channel: relay
715 modes:
716 - image2video
717 resolutions:
718 - 720p
719 durations:
720 - 1
721 - 2
722 - 3
723 - 4
724 - 5
725 - 6
726 - 7
727 - 8
728 - 9
729 - 10
730 - 11
731 - 12
732 - 13
733 - 14
734 - 15
735 maxInputImages: 1
736 aspectRatios:
737 - 1:1
738 - 16:9
739 - 9:16
740 - 4:3
741 - 3:4
742 - 3:2
743 - 2:3
744 defaults:
745 aspectRatio: 9:16
746 duration: 8
747 openai:
748 apiKey: ""
749 baseUrl: https://aitoearn.ai/api/ai
750 timeout: 300000
751 volcengine:
752 apiKey: ""
753 baseUrl: https://ark.cn-beijing.volces.com/
754 accessKeyId: ""
755 secretAccessKey: ""
756 spaceName: ""
757 playbackBaseUrl: ""
758 urlAuthPrimaryKey: ""
759 grok:
760 apiKey: ""
761 baseUrl: https://api.x.ai
762 dashscope:
763 apiKey: ""
764 baseUrl: https://dashscope.aliyuncs.com
765 gemini:
766 apiKey: ""
767 baseUrl: https://aitoearn.ai/api/ai
768 relay:
769 url: https://aitoearn.ai/
770 apiKey: ""
771 timeout: 300000
772 anthropic:
773 baseUrl: https://aitoearn.ai/api/ai
774 apiKey: ""
775 draftGeneration:
776 planner:
777 defaultModel: gpt-5.5
778 queue:
779 lowPriorityMinPriority: 1000
780 lowPriorityConcurrency: 2
781 imageModels:
782 - model: gpt-image-2
783 displayName: GPT Image 2
784 runtimeModel: gpt-image-2
785 queuePriority: 1
786 tags:
787 - en-US: Sale
788 zh-CN: 限时
789 supportedAspectRatios:
790 - 1:1
791 - 3:2
792 - 2:3
793 - 4:3
794 - 3:4
795 - 5:4
796 - 4:5
797 - 16:9
798 - 9:16
799 maxInputImages: 16
800 pricing:
801 - resolution: 1K
802 - resolution: 2K
803 - resolution: 4K
804 agent:
805 baseUrl: https://api.openai.com/v1/messages
806 apiKey: sk-placeholder
807 models:
808 - claude-opus-4-6
809 - claude-haiku-4-5-20251001-thinking
810 - claude-opus-4-5-20251101-thinking
811 - claude-opus-4-5-20251101
812 - claude-sonnet-4-5-20250929-thinking
813 - claude-haiku-4-5-20251001
814 - claude-opus-4-1-20250805
815 - claude-opus-4-1-20250805-thinking
816 - claude-sonnet-4-5-20250929
817 - claude-opus-4-6
818 - claude-opus-4-6-thinking
819 defaultModel: claude-opus-4-6
820 backgroundModel: claude-haiku-4-5-20251001
821 thinkModel: claude-opus-4-6
822 taskTimeoutMs: 3600000
823
823 lines YAML