先改写一下原来的函数

def getText(text,role,content):
    jsoncon = {}
    jsoncon["role"] = role
    jsoncon["content"] = content
    text.append(jsoncon)
    return text

添加 flask

from flask import Flask, request, jsonify
import json
import time
app = Flask(__name__)

@app.route('/xinhuo', methods=['POST'])
def xinhuo():
    text = []
    data = json.loads(request.data)
    Input = data.get('input')
    print(Input)
    print(getText(text,"user",Input))
    print(checklen(getText(text,"user",Input)))
    question = checklen(getText(text,"user",Input))
    SparkApi.answer =""
    SparkApi.main(appid,api_key,api_secret,Spark_url,domain,question)
    result_of_SparkApi =  getText(text,"assistant",SparkApi.answer)
    result=result_of_SparkApi[-1]["content"]
    return jsonify({'result': result})

emacs lisp 的调用

(defun ask-xinhuo-line ()
  (interactive)
  (let ((wd (format "用列表说明%s,请逐步分析" (thing-at-point 'line t))))
      (request
    "http://localhost:5000/xinhuo"
    :type "POST"
    :data (encode-coding-string (json-encode `(("input" . ,wd))) 'utf-8)
    :headers '(("Content-Type" . "application/json"))
    :parser 'json-read
    :sync t
    :success (cl-function
          (lambda (&key data &allow-other-keys)
            (setq r
              (assoc-default 'result data)))))
      (insert "\n" r)))

(global-set-key (kbd "C-c a x") 'ask-xinhuo-line)

Anselm
0 声望0 粉丝