0


【python】AI Navigator的使用及搭建本机大模型

使用

大模型下载

随机下载一款大模型用于尝试,作者尝试的是codegemma-7b-it该大模型,具体每一款大模型简单介绍请查看【Anaconda】AI Navigator中大模型简单介绍-CSDN博客

聊天对话

下载完成后点击New Chat即可对话聊天

搭建本机大模型

启动大模型服务器

设置ip地质,以及端口号,由于作者电脑的8080端口被占用,所以换成了8088,选择刚下载好的大模型,点击Start

调用服务器代码

  1. #使 Python 能够向 API 服务器发出 HTTP 请求并接收响应。
  2. import requests
  3. #指定的服务器地址和服务器端口
  4. base_url = 'http://localhost:8088'
  5. #验证服务器是否正常运行。此函数向终端节点发送 GET 请求,并返回一个 JSON 响应,告知您服务器的状态。
  6. def get_server_health():
  7. response = requests.get(f'{base_url}/health')
  8. return response.json()
  9. #此函数将用户输入发送到加载到 API 服务器中的模型,并接收生成的响应。
  10. def post_completion(context, user_input):
  11. prompt = f"{context}\nUser: {user_input}\nAssistant:"
  12. #用于控制 AI 模型如何根据用户的输入生成响应。这些参数指示模型在完成过程中的行为。这将转换为 JSON 并作为请求正文发送。
  13. data = {
  14. 'prompt': prompt,
  15. 'temperature': 0.8,
  16. 'top_k': 35,
  17. 'top_p': 0.95,
  18. 'n_predict': 400,
  19. 'stop': ["</s>", "Assistant:", "User:"]
  20. }
  21. headers = {'Content-Type': 'application/json'}
  22. response = requests.post(f'{base_url}/completion', json=data, headers=headers)
  23. if response.status_code == 200:
  24. return response.json()['content'].strip()
  25. else:
  26. return "处理请求时出错。请再试一次。"
  27. #每次交互后,您需要更新对话的上下文,以帮助模型生成连贯的对话。此函数通过附加最新的用户输入和助手的响应来更新context的值,从而使模型保持参与对话
  28. def update_context(context, user_input, assistant_response):
  29. return f"{context}\nUser: {user_input}\nAssistant: {assistant_response}"
  30. def main():
  31. context = "你是一个友好的人工智能助手,旨在提供有用、简洁和准确的代码信息。"
  32. #获取服务器状态
  33. health = get_server_health()
  34. print('服务器健康:', health)
  35. if health.get('status') == 'ok':
  36. while True:
  37. user_input = input("输入提示符或键入“exit”退出:")
  38. if user_input.lower() == 'exit':
  39. break
  40. #人工智能回复信息
  41. assistant_response = post_completion(context, user_input)
  42. print('助理:', assistant_response)
  43. #组合我们之前的聊天内容
  44. context = update_context(context, user_input, assistant_response)
  45. else:
  46. print("服务器尚未准备好接受请求。")
  47. if __name__ == "__main__":
  48. main()

响应结果

参考文档

Anaconda AI Navigator 入门 — Anaconda documentation

API 服务器教程 — Anaconda documentation

标签: python 人工智能 AI

本文转载自: https://blog.csdn.net/qq_39397927/article/details/142852618
版权归原作者 Z_W_H_ 所有, 如有侵权,请联系我们删除。

“【python】AI Navigator的使用及搭建本机大模型”的评论:

还没有评论