Introducing Knowledge Base with Katella

Vu Le
katella.ai
4 min readJan 23, 2018

--

Here at katella.ai, we believe in the power of data. Our mission is to connect and simplify transactions and movement of data across your Enterprise apps. Katella can query real-time information from these apps, but often time human-curated information is the best information. And with that in mind I’d like to introduce the Knowledge Base app for Katella.

Why build a Knowledge Base?

Elevate the Self-service experience — today you can ask Katella to look up a co-worker, schedule meetings that fit everyone’s schedules, or tell you who’s out of the office. The Knowledge Base completes the self-service experience by exposing your team’s FAQ and Q&A through the same easy-to-use natural language interface.

Lightweight & accessible — Confluence, Google Docs are slow and heavy and not exactly accessible. We want a lightweight, always-on & ready-to-fire note taking solution.

Better search — with the advancement in Natural Language Processing and Machine Learning, we can try to make search better.

Richer content — Katella has data from HR, Calendar and Productivity apps so we can inject relevant information into the content, providing a rich and consistent user experience.

How does Knowledge Base for Katella work?

Use Katella to add a programming script, Q&A, team trivia, company policy, … things that you want to share with the team.

Add a note by talking to Katella in Slack, something along the line of “add a note” or “create article”. You may use Slack formatting (bold, italics, highlight syntax …) to decorate the article:

Katella comes with our Expression Language, allowing you to reference variables using brackets {}. We use it extensively behind the scene to build skills, but for the context of a Knowledge Base you can retrieve the current viewer’s name and email using {user.name} and {user.email} to craft a more personal note.

Inserted articles will be indexed and immediately searchable by your entire team:

Many Knowledge Bases use Elastic Search and it’s sufficient most of the time. We want to take our Natural Language Processing know-how and go one step further. Each article is first run through our NLP pipeline, which through training can annotate the content with entities (people, emails, offices…) before getting indexed in Elastic Search. Two reasons for this:

a) Accuracy - A regular Elastic search for “due in May” gives equal weight to the month of May and May the person. With annotations and NLP context, Katella knows we are searching for a month, therefore gives a slight priority boost to documents with May as the month.

b) Automatically enrich data with … 😮 Katella’s other connected Apps. Note below how my article just casually mentions Jennifer Caldwell. If I have BambooHR (or Namely) app turned on, Jennifer’s information will automatically be injected into the article:

Through our web interface, you can quickly add multiple articles. Also here you can optionally enhance the searching capability with natural language questions. For example if your article is about “Pay Day”, a search of “when’s my check coming?” wouldn’t necessarily match the article (if the article doesn’t mention “check” anywhere). But by training Katella with human-like questions such as “when can I expect the 1st pay check” or “where is my payslip?”, statistical analysis will kick in to match similar natural language sentences.

You can get a fairly good match after about 4–5 sample sentences (expect better results going forward as we are continuously tuning our algorithm).

What’s coming?

Behind the scenes, Katella leverages Machine Learning to categorize non-matching sentences as well as cluster unknown questions together. With enough data, our next release will feature smart routing, which enables each functional teams to answer their departments’ related questions (e.g route hardware/software questions to IT team) straight from Slack. The clustering algorithm will help fit one answer to multiple questions, simplifying data entry and preventing duplicates. The ability to mark notes as private or read-only is also planned for the next release.

--

--