Extend intelligence to Edge Computing and converge on Interacting with People

Star

Get Started Demo video(Chinese)

Connect to IoT

Aiicy supports access to low-power IoT devices with MQTT. And we also plans to release a client demo for embedded devices to customize more complex inputs and behaviors.

Native Machine Learning

Aiicy has open source NLU and End-to-End Keyword Spotting application, etc. and supports python runtime to help you quickly build automated workflows

Application

Aiicy provides a cross-language application system. You can use Python, Golang or even binary programs to develop applications for Aiicy. Discover others’ apps, share yours

Features

  • Offline Keyword Research
    • Based on open source lightweight speech recognition engine PocketSphinx
    • Offline language model training using the open source toolset CMUCLMTK
  • Online speech recognition
    • Using Baidu Online Speech Recognition API
  • Online Text-to-Speech
    • Using Baidu Online Text-to-Speech API
  • Natural Language Understanding
    • Based on open source natural language understanding framework Rasa NLU
    • Using open source information extraction toolset MITIE to build models for entity recognition and intent recognition in Rasa NLU
    • Using open source machine learning framework scikit-learn to do Intent recognition classification
    • Using open source word segmentation component jieba to do Chinese word segmentation
  • Text Sentiment Analysis
    • Sentiment Analysis Using Support Vector Machine(SVM)
    • Using open source topic modelling tool Gensim to build word2vec model
    • (Optional)Sentiment Analysi based on Logistic Regression Classification

Create & Share Apps

Currently, Aiicy only supports Python

# application/sayhi
class HI():
    def __init__(self):
    # Initialize work here

    def handler(self, event, context):
        res = {}
        if isinstance(event, dict):
            if "err" in event:
                raise TypeError(event['err'])
            res = event
        elif isinstance(event, bytes):
            res['bytes'] = event.decode("utf-8")
        if 'messageQOS' in context:
            res['messageQOS'] = context['messageQOS']
        if 'messageTopic' in context:
            res['messageTopic'] = context['messageTopic']
        if 'messageTimestamp' in context:
            res['messageTimestamp'] = context['messageTimestamp']
        if 'functionName' in context:
            res['functionName'] = context['functionName']
        if 'functionInvokeID' in context:
            res['functionInvokeID'] = context['functionInvokeID']
        res['Say'] = 'Hello Aiicy'
        return res