爱吱声

标题: 利用 Deepseek 抓取PDF的文字并矫正。 [打印本页]

作者: nanimarcus    时间: 2025-2-2 03:35
标题: 利用 Deepseek 抓取PDF的文字并矫正。
本帖最后由 nanimarcus 于 2025-2-6 22:17 编辑
  |. |' N7 G* j+ A2 Q* g. m
- D  H* Z" o+ t4 C% E: g& O- O$ i把PDF上传,然后让他抓取文字,并修改可能的错误。
  @5 T- y# B9 P然后deepseek完美的完成了任务。
" _6 \9 ]* t1 {$ h( A5 i; ]8 Q8 l段落清楚,列清楚,页眉页脚全部去掉。
: ^4 D. r8 n1 [6 d2 g我要疯掉了!
# r3 |4 k" r2 m- O- [. J赶紧把自己那些成年老书给搬出来,deepseek,这是党和人民考验你的时候了!7 I+ D7 M5 e( u) C* M5 D
====# h5 h/ z% N5 l" h( Z6 J* I) A
中文也很完美。: n* ?2 ]; \0 t  o. B5 I
经验值,每次十页比较稳定。" V2 I8 j( x$ G% m9 k% n, x  L
现在我这里API还不能用,等恢复了,全自动了。
. a% D, G& b9 v, Y1 |' @' a5 m====
$ {, T2 q! X! X9 j/ ^7 f7 @第二次疯掉了!
( X) ]! `* J6 ]; Y我上传英文文件后,让他抓取文字,矫正,然让他按页划分,前面放英文,后面放中文,结果仍然完美。
5 P, U5 w( |9 K! a/ P====
: J3 j: E- ]& `8 k* J现在我让他从PDF抓取文字,矫正后,按段落翻译,可以一次翻译多个段落,每次翻译不超过一个固定数目,结果仍然完美。
! |% x* l% O3 f9 Y但是任务多了后,每次翻译的页面数是减少的。& ~' Y- V* R5 r8 N. L7 N: o
好吧,我五体投地,继续探索。
& a6 o0 g8 I. Z4 v; L( r: @) D====
0 D0 M6 N% A4 N. t为了防止中间结束,可以告诉他必须所有页面全部处理完就可以了,我现在是应该佩服我自己呢还是应该佩服 deepseek 呢,抑或都佩服。, h. d1 l' ^3 m* }2 V' `
====
$ f2 Y& r; m: k2 `6 w0 Z- S好吧,有些东西是不给翻译的,哈哈。
" k7 S$ Z0 }7 z1 n- W( y
% @7 b# X- _. V( P; D* N7 F: zSorry, that's beyond my current scope. Let’s talk about something else.7 W6 o2 |2 c. h. H% E1 S+ |5 Q
====
3 y/ A  O- j& G) G2 i. m& g然后我的英文命令也让deepseek 帮我修改,呵呵。
( I( m% p8 `& Q( y8 r: ~0 T$ t====
2 \/ I  S& v" _( Q5 J# R9 _日语的文本他也可以处理,过程一模一样的。问题也是一模一样的,假名太多,汉字很少,我不懂日语,翻出来都不知道对不对。
' m: Q" b) ~# k) P) ^4 ~* k8 l+ A* U====$ u) D# b  x* o- M
时间段的话,北京时间的下午和晚上用比较好。1 k8 M( k2 i2 F  d7 M3 _
后半夜和早上,美国人上班了,要么在用,要么在黑客攻击。$ j1 ^2 }, l" s8 ?- ^
====
" Q# I. |' Z+ Z3 w& o用千问吧,非常稳定,非常强大。  p7 N% r) W2 Q! M* h# {
https://chat.qwenlm.ai/1 w% o3 ]" V% k3 C. S
====# h4 R8 u5 d" l/ R  C. Z9 y
Deepseek,API 看上去可用了,但是不给充钱。, @& R5 P5 w% T
8 C: c( r: T$ R
& C& j0 G/ t- `% a; j! `7 j+ }
( A- p  P- _& |  c% C

作者: 马鹿    时间: 2025-2-2 03:53
这功能很赞呀
作者: nanimarcus    时间: 2025-2-2 03:56
马鹿 发表于 2025-2-2 03:53. H4 U; y# g6 `+ U: g  a
这功能很赞呀
! c2 {  i% N! `% ?
简直太赞了,我现在正在思考还有什么工作需要 deepseek 干的,现在的上限是我的上限,不是 deepseek 的上限。
作者: indy    时间: 2025-2-2 04:13
有没有上传整本书试试
作者: nanimarcus    时间: 2025-2-2 04:27
indy 发表于 2025-2-2 04:13' {) z" L( W- y- S: i- i
有没有上传整本书试试

9 v) l$ j/ J! [- P4 H! w目前看来,差不多十页左右就停止了,看看还有什么诀窍不。
作者: 马鹿    时间: 2025-2-2 04:41
本帖最后由 马鹿 于 2025-2-1 15:43 编辑 % O8 [+ D/ l& S$ T3 Q+ J
% B1 ^5 t( D0 {! v
以后让deepseek 读出土的竹简* A) a/ [8 q% x8 e5 K5 h

4 i& {' l. H" G. O6 l' J还有把古文翻译成现代白话
" `7 W, ]! L/ {* f% S- p: [2 Y# O" I
以后不认识的字不查字典了, 直接问deepseek
作者: 方恨少    时间: 2025-2-3 01:23
请教是如何实现的?. p) J- f+ T% E
" z6 J- G4 T+ i7 p. Y1 P! n0 J. I
我在网页版和手机版都尝试了,都不行,网页版上传PDF文件始终不成功,手机版上传之后,发出指令提取文件中文字,始终是文件解析中。直接在DS里问如何上传PDF文件,并提取文件中文字,照做其实是一样的。
作者: nanimarcus    时间: 2025-2-3 03:06
方恨少 发表于 2025-2-3 01:23  G; A1 M: d3 U* o6 f
请教是如何实现的?. |2 k6 a" D& W6 w9 }! H8 V2 u
0 Q2 M2 H( ^! r+ q! U# u4 B
我在网页版和手机版都尝试了,都不行,网页版上传PDF文件始终不成功,手机版上传之后 ...

( u% ^1 g/ t6 e6 O! [% f- C1 U: W4 z  S0 `: t8 L
我现在也上载不了了,"upload failed",几个小时前还好好的,应该是服务又受攻击所以功能收缩了。
: e4 i% W. K6 P8 }文字之类的没问题。估计deepseek现在暂时只保证主要功能。4 y- S0 o: h' V- m' X
美国人就这样,打不过就耍流氓,估计要等一段时间才能完全恢复。
' \5 b3 z5 k4 N5 G' S
作者: nanimarcus    时间: 2025-2-5 00:15
方恨少 发表于 2025-2-3 01:236 W5 C; J. L1 u$ p9 j7 r
请教是如何实现的?
  h& c0 d# e: A; T  ~# b$ F3 I1 J9 W' \! Y" c; b3 q
我在网页版和手机版都尝试了,都不行,网页版上传PDF文件始终不成功,手机版上传之后 ...
# w8 v2 ?' F* u2 s9 M+ M
https://chat.qwenlm.ai/
% {6 ^) X8 S1 z试一下千问,估计美国人没有攻击他,所以资源敞开用。
8 c1 l+ `" O$ o8 e9 K/ v  S: o很稳定,质量不错,好像最多一次处理15页。
/ U( s% {: }0 o我直接拿deepseek的指令用,没有区别。
作者: heinsect    时间: 2025-4-16 17:01
试了这个工具,可以转成markdown,正确率很高,有漏行,图片会放在一个指定的目录下。. M1 I% s  |5 Z" }# P7 `* @! A  k  X
处理一本100页左右的扫描版本的中文PDF,一份某行业的接口标准,纯CPU,几分钟时间。* b. p9 E3 ^3 X* |: J( @
这个工具不能处理表格,我把文件拖到豆包里,“把这个文件中的表格转换成 markdown。只是表格,不需要其它内容”,表格多的话,要发好多次“请继续”。" `( Q1 _  [. W* V4 J2 w
" O4 Y4 P, o: k! k- I) T
https://github.com/oomol-lab/pdf-craft
* n& F6 n& b% H2 _, g  R1 M" p2 F- d4 ^: ]7 ~& [$ I6 d9 V
1. 这个工具要求装 python3.10; R& T5 N0 f' r& T+ I0 w
2. pip install onnxruntime==1.21.0, 有英伟达的卡:pip install onnxruntime-gpu==1.21.07 {! K4 w4 Q0 d' @* k
3. pip install pdf-craft
  F/ Q4 ~, r$ [* p4. 把下面的内容写到一个文件里,例如 a.py# ~1 h, X8 {3 C3 ]/ ]
6 w* G: @  j. _: L( h5 h# T2 n
  1. from pdf_craft import PDFPageExtractor, MarkDownWriter
    % t/ c8 L7 J/ ~6 T6 M8 j
  2. , d# |. k) d8 u' m/ ?, `2 d
  3. extractor = PDFPageExtractor(* f" D) i9 @2 y6 E
  4.   device="cpu", # If you want to use CUDA, please change to device="cuda" format.
    : V# @. \; `0 g4 M  T8 o2 Q* \) e
  5.   model_dir_path="/path/to/model/dir/path", # The folder address where the AI ​​model is downloaded and installed
    ; D0 Q- q3 i9 J  B) M( b- n
  6. ). ~' k2 D( r0 P
  7. with MarkDownWriter(markdown_path, "images", "utf-8") as md:/ x; Y$ g  K7 U4 E2 {
  8.   for block in extractor.extract(pdf="/path/to/pdf/file"):# W  z$ U, q* g' n; ~: e2 F( E( a
  9.     md.write(block)
复制代码
1 d/ h0 e1 Q; {$ l, V; I
2 y! [1 p( H5 c* z9 M/ _. u
要修改的内容:- r) _& `) K" E# r, C' P
4.1 /path/to/model/dir/path:存放模型的路径。第一次运行这个脚本会从 huggingface.co 下一个模型,国内的要科学上网,国内的镜像上没这个模型. a; A8 l$ e( ~: ?; V
4.2 markdown_path:输出的 markdown 路径文件名! r  Y6 L1 m- S) u
4.3 /path/to/pdf/file: 输入的源PDF路径文件名+ o: u$ a4 p+ k/ G  e2 B
, j  Q' v# t. K! T) I$ O  [3 T
5. 运行 python3 a.py
作者: nanimarcus    时间: 2025-4-16 19:47
本帖最后由 nanimarcus 于 2025-4-16 19:50 编辑
' I8 W: {3 A2 C% o( p6 d7 n3 q7 |' @# }9 g# T8 K' {# h1 _7 C
目前为止PDF转纯文字的最佳办法。
6 ~, O! m5 B6 t& \, X- M) O9 x; Z先写个小程序,把PDF按章节切成小的PDF。9 U  L3 ]. r3 f+ X
然后,把PDF一个个传到deepseek,让她抓取,除错,输出。
' L0 J$ h+ Y2 V4 T效果非常好。
$ o8 F% s( R, b6 q# }6 L  G: i; z4 `* ]
deepseek,qwen,chatgpt 三个,deepseek是最好的。! w2 O$ ~* n" }2 H5 N% f
6 A, j5 h+ k5 s' \
deepseek 把页脚页眉页号全给去除干净了,跨页的段落也给你修好了。; F0 j0 f# W% R8 @2 k
而且deepseek不会加戏,chatgpt有时候会想当然的加上没有的文字,让句子看上去想那么回事。3 R+ m- b6 c& ?
我曾经修一个历史文章,chatgpt给我活活加了三段,真是文豪。
, Z, G. n1 Q9 U6 U7 A# Y, _" H
8 C$ o( g5 l" R9 VAPI到目前为止,差强人意,不如网页版本修得干净。+ |3 l; y; K) C* H  ^* A( t( W. W) e8 ]/ z

: A# _! x" K9 _! x5 {" U6 Y: ndeepseek可以同时开四个。
' [- m0 }2 K# [
作者: 三力思    时间: 2025-4-17 12:26
本帖最后由 三力思 于 2025-4-17 12:27 编辑 - w( |0 Z5 t$ r: Y4 B2 @

" c4 @# T2 ~4 d! F5 E1 J6 T; B- ~" O, F让Deepseek给你开发本地架构的抓取PDF软件,并负责上传,下载。 AI监工AI。 LOL
作者: nanimarcus    时间: 2025-4-17 16:33
三力思 发表于 2025-4-17 12:263 y7 L- q( @: @) G
让Deepseek给你开发本地架构的抓取PDF软件,并负责上传,下载。 AI监工AI。 LOL ...
4 a, Z0 d4 C, @
细说一下,听上去很不错,多谢。
作者: 三力思    时间: 2025-4-17 21:22
nanimarcus 发表于 2025-4-17 16:335 x) O3 x7 {% `( \9 c9 U" }
细说一下,听上去很不错,多谢。
$ \: d. l8 a( W
直接问DS,“用C#,JAVA语言开发把PDF分成单页PDF并上传DS程序的源代码”
作者: nanimarcus    时间: 2025-4-17 21:55
本帖最后由 nanimarcus 于 2025-4-18 15:39 编辑
8 z2 q* n' N# S/ ^) k
9 \' F( G% D8 v% c- n* w! z已经搞定.
$ b4 S9 A1 U* [1 V2 [( A$ W# ]1 l
/ n' e5 q! S5 C" F$ S, v' [2 d首先 PDF 本身已经OCR了,Adobe Acrobat Pro中自带这个功能。$ g' {- ?, ^6 Q6 Q8 `
* @4 j5 j& S+ T5 ^' y0 I& i
1, python + pypdf 按章节拆分小的PDF+ m; e* `  t4 d
; e( M3 u# f: ^- O+ Y1 m5 G
2, pdftotext -enc UTF-8 -nopgbrk -eol dos input outputfile
/ i+ e& D1 c0 T" A& j5 g  A& {; z) ~
) ~7 j+ D% R8 p9 ~得到text file3 X# U  [9 I) R) W% T% [& Q: v) s

; @5 O2 }; B# o) v& q3, python 读取整个outputfile,丢给deepseek 矫正。6 O3 z# u' A1 ?. Q/ Z; Q2 `5 v

# {2 A6 t9 q: ^, K模型是 deepseek-chat  D- u. A3 q( N

$ P  a; n6 ]3 x! p2 e( n4 k# v  E8 m" I0 Fmax_tokens 最大是 8192,别的不用改。
8 k* C; W- e* K' w" W+ g
  n& z/ W4 ~+ }' |$ l8 U  P7 t  m3 |参考:7 ~( G3 X* c. |7 |
https://api-docs.deepseek.com/api/create-chat-completion
  I7 r+ j. ^+ M8 L9 i' \$ ?* v; t4 G% f7 T% E+ ?; X) h) M
4,费用:
- s/ ~& _' y5 r
# e. [) E1 G0 S  |" x实测:9 A  O# f6 Z6 K+ u

6 c, k; A$ Z; ?3 D" b3 J296K 字母,用了 9 美分。# P' D7 g% T7 m' S
% N( z/ f: k' f* ^# v2 N5 P9 q
英文字母 到 token 用量大约 1/3
- j0 V4 U; W! f
) h# k- c$ S  [! t  E( `! `' _tokens: total, 11782 completion,  3729 prompt,  8053 | s:  32899
3 q  T( u. C1 M' j4 S) o/ D$ ~' F* z' |( z( c
32899 个字母花费 11782 tokens,包含输入输出的 tokens: |% H( i4 ]& z/ w0 z/ p; `

: r9 m5 T9 B. [3 y价钱,非常非常便宜了。$ ]. u4 O+ H# ^8 i( A6 }4 u
; n5 b7 O; O  c2 p7 J
参考如下可以计算,懒得算了。
& Y8 ]3 N: q5 V" _% n- L" Z8 t3 _! |: r+ s* o
https://api-docs.deepseek.com/quick_start/pricing% h: e2 k- j8 R) s0 T0 @, N3 K
* t/ t# b- `+ ^) a/ D
1M TOKENS INPUT (CACHE HIT)(4)                $0.07                $0.146 ~0 Q3 C6 y' \: i- N7 L
1M TOKENS INPUT (CACHE MISS)                  $0.27                $0.55. |+ z& I6 z. m8 ~) z, ~
1M TOKENS OUTPUT(5)                                              $1.10                $2.190 z# Y5 j( @( b- z9 Z$ k) h: j

: ~- Q7 @! \- b' Z9 j' V( `% `5, Balance
0 Q7 S) a' X$ S: `# |
) I3 I5 d. ]7 H4 k9 S可以在程序里调用,知道每次运行结束后,balance还剩多少。$ l0 q- r! u' I" J
参考:3 l8 X7 ~: X; \1 ?4 e
https://api-docs.deepseek.com/api/get-user-balance
# W  T$ |  ?5 ?) G3 I. d
6 X: O- y$ o( J" _6, Models' E, G) i! v  c- V3 A

+ ]. t  U. G7 t+ U目前就两个$ _$ X2 b4 a! j: a
# deepseek-chat
9 w4 X6 p6 w: @: V6 r" E4 x& U# deepseek-reasoner8 J1 D0 D- u7 F0 ]0 B: b4 P9 Q
% ?5 @9 K) Z2 y% H2 l. u
参考:
) D8 I* n) p8 U6 Vhttps://api-docs.deepseek.com/api/list-models) n; c! ?, }! x

/ A# n. \0 O/ M7 e& y0 [
% O/ v8 T" s+ @9 l8 _7, 问题  K/ _7 e7 P- ^! v9 V* V$ C

9 E$ L4 _. L" l8 y5 `" Zdeepseek 会将前后两段合成一段。( u. W) Q: u# j0 i
特别是那种大量的对话的段落,deepseek会给你合成一大段。: x0 S- s- y- J5 @; f: w: }/ f2 t( S
! ]+ G2 R" J; `2 X$ z4 F% G
8, 钱说了算。
' ]% I. P. T/ q+ f0 l+ M, ^
3 [) x& y* M1 I- A, ^" p' Gdeepseek 如果是免费的网页版,有时候会出现超出范围的提示,不干了。' M6 V/ P) W1 S& ?! ^% w- M
但是API就不会出现这种情况,毕竟我们给钱了。
: T7 N6 d, A5 I6 f, I) k7 y% n7 Vchatgpt也是这样的。
/ @: B2 c+ m' ?% f
6 E2 x' P2 n; n
7 D! d* F, J8 k! e8 f. A; m4 z




欢迎光临 爱吱声 (http://www.aswetalk.net/bbs/) Powered by Discuz! X3.2