This commit is contained in:
37
docs/snippets/go/advanced/keyword_extraction_example.md
Normal file
37
docs/snippets/go/advanced/keyword_extraction_example.md
Normal file
@@ -0,0 +1,37 @@
|
||||
```go title="Go"
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"log"
|
||||
|
||||
"github.com/kreuzberg-dev/kreuzberg/packages/go/v5"
|
||||
)
|
||||
|
||||
func main() {
|
||||
maxKeywords := int32(10)
|
||||
minScore := 0.3
|
||||
|
||||
config := &kreuzberg.ExtractionConfig{
|
||||
Keywords: &kreuzberg.KeywordConfig{
|
||||
Algorithm: kreuzberg.KeywordAlgorithm_YAKE,
|
||||
MaxKeywords: &maxKeywords,
|
||||
MinScore: &minScore,
|
||||
},
|
||||
}
|
||||
|
||||
result, err := kreuzberg.ExtractFileSync("research_paper.pdf", config)
|
||||
if err != nil {
|
||||
log.Fatalf("extraction failed: %v", err)
|
||||
}
|
||||
|
||||
if keywords, ok := result.Metadata["keywords"]; ok {
|
||||
keywordList := keywords.([]map[string]interface{})
|
||||
for _, kw := range keywordList {
|
||||
text := kw["text"].(string)
|
||||
score := kw["score"].(float64)
|
||||
fmt.Printf("%s: %.3f\n", text, score)
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
Reference in New Issue
Block a user