code for article  pfeilbr/aws-kendra-playground
learn Amazon Kendra, intelligent search service powered by machine learning
Concepts
- Index - two types. document (unstructured) and FAQ (structured) - You can add documents directly to an index using the BatchPutDocument operation
- You can add questions and answers (FAQs) directly to your index using the console or the CreateFaq operation
 
- Data Source - s3, salesforce documents, sharepoint, custom 
- Documents - html, ppt, doc, pdf, txt - custom fields - can define custom fields of types: Date, Number, String, String List
 
- Queries - natural language (NLP), keyword queries, Factoid questions — Simple who, what, when, or where questions. - Facets are scoped views of a set of search results
- By default, Query returns all search results. To filter responses, you can perform logical operations on the document attributes.
 
- Tags - can assign tags to indexes, data sources, and FAQs 
- default encryption at rest with customer of AWS KMS keys 
General Steps
- create index
- add data sources for index
- synchronize the data source
- query/search the index
Editions
- Developer
- Enterprise
You specify Edition: DEVELOPER_EDITION | ENTERPRISE_EDITION when you create an index
Creating Example Index
see main.py
sam deploy --guided
# copy outputs into `.env`
python main.py
Resources
- Amazon Kendra Docs
- Getting started (AWS SDK for Python (Boto3)) - Amazon Kendra - shows create index, create data source for index, sync data source, all while waiting for each step to complete in between
- Deploying Amazon Kendra - pre-built react frontend for kendra. provides <search />react component
- aws-samples/enterprise-search-with-amazon-kendra-workshop
- Kendra | Using a custom data source
Twitter • Reddit