如何在 Web 服务上部署经过训练的强化学习模型



我计划创建一个网站,用户可以在其中与训练有素的AI代理一起玩简单的游戏。如何在 Web 服务上部署经过训练的强化学习模型? 我们可以使用张量流吗?Andrej Karapathy的convnet.js框架对此有用吗?

我已经尝试过convnet.js也尝试过其他javascript库来做同样的事情,但它没有用。你永远无法知道神经网络发生了什么。即使在我训练了一整天的代理之后,它也没有给出任何显着的输出。

我的建议是将python程序作为Web服务,您可以使用flask。 当需要执行操作时,从游戏调用 Web 服务。 该服务将仅返回操作。 这样,您将具有了解正在运行的内容的优势。您可以非常轻松地绘制图形并注意到更改。

这是我的 Web 服务代码片段

from flask import Flask  
from flask import request  
from flask_cors import CORS
app = Flask(__name__)
CORS(app)

@app.route("/update", methods=['POST'])
def rest_update():
reward = request.form.get('reward')
reward = float(reward)
state = request.form.get('state')
state = state.split(',')
new_state = []
for each in state:
new_state.append(float(each))
return str(brain.update(reward,new_state))
if __name__ == '__main__':
app.run(debug=True)

更新是将奖励和状态作为输入和返回操作的函数。 状态是输入 采取为字符串,以逗号(,(分隔。 这种方法非常适合我的项目。

编辑:您可以使用任何适用于 python 的库,以您喜欢的为准。 它可以是PyTorch或TensorFlow或任何其他。

相关内容

  • 没有找到相关文章