| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 | # Copyright (c) Meta Platforms, Inc. and affiliates.# This software may be used and distributed according to the terms of the Llama 3 Community License Agreement.import langchainfrom langchain.llms import Replicatefrom flask import Flaskfrom flask import requestimport osimport requestsimport jsonclass WhatsAppClient:    API_URL = "https://graph.facebook.com/v17.0/"    WHATSAPP_API_TOKEN = "<Temporary access token from your WhatsApp API Setup>"    WHATSAPP_CLOUD_NUMBER_ID = "<Phone number ID from your WhatsApp API Setup>"    def __init__(self):        self.headers = {            "Authorization": f"Bearer {self.WHATSAPP_API_TOKEN}",            "Content-Type": "application/json",        }        self.API_URL = self.API_URL + self.WHATSAPP_CLOUD_NUMBER_ID    def send_text_message(self,message, phone_number):        payload = {            "messaging_product": 'whatsapp',            "to": phone_number,            "type": "text",            "text": {                "preview_url": False,                "body": message            }        }        response = requests.post(f"{self.API_URL}/messages", json=payload,headers=self.headers)        print(response.status_code)        assert response.status_code == 200, "Error sending message"        return response.status_codeos.environ["REPLICATE_API_TOKEN"] = "<your replicate api token>"    llama3_8b_chat = "meta/meta-llama-3-8b-instruct"llm = Replicate(    model=llama3_8b_chat,    model_kwargs={"temperature": 0.0, "top_p": 1, "max_new_tokens":500})client = WhatsAppClient()app = Flask(__name__)@app.route("/")def hello_llama():    return "<p>Hello Llama 3</p>"@app.route('/msgrcvd', methods=['POST', 'GET'])def msgrcvd():        message = request.args.get('message')    answer = llm(message)    print(message)    print(answer)    client.send_text_message(llm(message), "<your phone number>")    return message + "<p/>" + answer
 |