Esempio n. 1
0
        def insert_corpora(source_lang, source_text, target_lang, target_text, confidence):

            #
            # FIXME: Any better idea?
            #
            PUNCTUATION = ".,:;-_+={}[]()<>|'\"`~!@#$%^&*?"

            if source_text == "" or source_text in PUNCTUATION:
                return
            if target_text == "" or target_text in PUNCTUATION:
                return
            if source_text == target_text:
                return

            corpus = Corpus.query.filter_by(
                source_lang=source_lang, target_lang=target_lang, source_text=source_text, target_text=target_text
            ).first()

            if corpus == None:
                corpus = Corpus.insert(
                    source_lang=source_lang,
                    target_lang=target_lang,
                    source_text=source_text,
                    target_text=target_text,
                    confidence=confidence,
                    frequency=1,
                    commit=False,
                )
            else:
                corpus.confidence += confidence
                corpus.frequency += 1
Esempio n. 2
0
def corpus_match():

    query = request.args.get('q', '')
    source_lang = request.args.get('sl', None)
    target_lang = request.args.get('tl', None)

    matches = Corpus.match(query, source_lang, target_lang)

    return json.dumps(map(lambda x: x.serialize(), matches))