X commited on
Commit
bbf6dfc
·
verified ·
1 Parent(s): e44a748

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +54 -2
app.py CHANGED
@@ -877,5 +877,57 @@ def chat():
877
  return jsonify({'response': f"📊 Память: {len(chat_memory.data)} пар, Шагов: {agent.total_steps}"})
878
 
879
  elif message == '/train':
880
- return json
881
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
877
  return jsonify({'response': f"📊 Память: {len(chat_memory.data)} пар, Шагов: {agent.total_steps}"})
878
 
879
  elif message == '/train':
880
+ return jsonify({'response': start_training()})
881
+
882
+ else:
883
+ return jsonify({'response': "🤖 Команды: /ai, /data, /stats, /train"})
884
+
885
+ @app.route('/train', methods=['POST'])
886
+ def train_route():
887
+ return jsonify({'message': start_training()})
888
+
889
+ @app.route('/stats', methods=['GET'])
890
+ def stats_route():
891
+ global is_training, agent, chat_memory
892
+ return jsonify({
893
+ 'memory_size': len(chat_memory.data),
894
+ 'steps': agent.total_steps,
895
+ 'epsilon': round(agent.epsilon, 3),
896
+ 'best_score': agent.best_score,
897
+ 'training': is_training
898
+ })
899
+
900
+ def start_training():
901
+ global is_training, training_thread, agent
902
+
903
+ if is_training:
904
+ return "⏳ Уже тренируется!"
905
+
906
+ is_training = True
907
+
908
+ def train():
909
+ global is_training, agent
910
+ try:
911
+ for ep in range(100):
912
+ if not is_training:
913
+ break
914
+ agent.train_episode()
915
+ if ep % 10 == 0:
916
+ print(f"📊 Episode {ep}: Epsilon={agent.epsilon:.3f}")
917
+ if ep % 20 == 0:
918
+ agent.save_model()
919
+ except Exception as e:
920
+ print(f"❌ Ошибка: {e}")
921
+ finally:
922
+ is_training = False
923
+
924
+ training_thread = threading.Thread(target=train)
925
+ training_thread.start()
926
+ return "🚀 Тренировка запущена!"
927
+
928
+ # =====================================================
929
+ # 7. ЗАПУСК
930
+ # =====================================================
931
+
932
+ if __name__ == '__main__':
933
+ app.run(host='0.0.0.0', port=7860)