Tika沒有提供波斯語言的語言檔案。從版本1.0 27 languages are supported開箱:
languages=be,ca,da,de,eo,et,el,en,es,fi,fr,gl,hu,is,it,lt,nl,no,pl,pt,ro,ru,sk,sl,sv,th,uk
在您的示例輸入與距離的0.41,這是上述的0.022確定性閾誤檢測爲li
(立陶宛語)。有關LanguageIdentifier
內部作品的更多信息,請參閱source code。
默認情況下不識別波斯語(Persian, ISO 639-1 2-letter code fa
)。 如果您希望Tika識別其他語言,您必須先創建一個語言配置文件。
爲此,必須執行以下步驟:
查找您的語言的文本語料庫。我發現了Hamshahri Collection。這應該足夠了。下載語料庫或其部分內容,並從XML中創建純文本文件。
爲語言標識創建一個ngram文件。這可以通過使用TikaCLI做到:
java -jar tika-app-1.0.jar --create-profile=fa -eUTF-8 fa-corpus.txt
這將一個名爲fa.ngp
其中包含正克。
配置Tika以便識別新語言。以編程方式使用LanguageIdentifier.initProfiles()
執行此操作,或者將名稱爲tika.language.override.properties
的屬性文件放入類路徑中。確保ngram文件也在類路徑中。
如果您現在運行Tika,它應該正確檢測您的語言。
更新: 詳細介紹創建語言配置文件所需的步驟。
什麼樣的錯誤?請發佈堆棧跟蹤。 – AlexR 2012-01-28 11:54:39
這是令人驚訝的,但我現在沒有任何錯誤,但問題是,它檢測不正確。它返回「lt」,意思是立陶宛語,而不是波斯語(波斯語) – aliakbarian 2012-01-28 12:16:42
我的問題是如何檢測語言tika?用什麼文件?例如,如果它使用任何語言的停用詞,我可以在哪裏添加波斯語的停用詞? – aliakbarian 2012-01-28 12:19:18