bacancydataprophets/Data_Anonymization
0
1import streamlit as st2from langchain_experimental.data_anonymizer import PresidioAnonymizer, PresidioReversibleAnonymizer3from langchain_groq import ChatGroq4# from langchain.chat_models import ChatGroq 5from dotenv import load_dotenv6import os7# Load environment variables8load_dotenv()9 10GROQ_API_KEY = os.getenv("GROQ_API_KEY")11 12# Initialize anonymizer13anonymizer = PresidioReversibleAnonymizer()14llm = ChatGroq(model_name="llama-3.3-70b-versatile") # Choose an available model15 16st.title("Call on Doc Data Anonymization")17 18# User Input19user_input = st.text_area("Enter your text:", "My name is John Doe and my phone number is 123-456-7890.")20 21if st.button("Process"):22 # Anonymization23 anonymized_text = anonymizer.anonymize(user_input)24 st.subheader("1. Original Text:")25 st.write(user_input)26 27 st.subheader("2. Anonymized Text:")28 st.write(anonymized_text)29 30 # Get LLM response31 response = llm.predict(anonymized_text)32 st.subheader("3. LLM Response:")33 st.write(response)34 35 # De-anonymization36 deanonymized_response = anonymizer.deanonymize(response)37 st.subheader("4. De-anonymized Response:")38 st.write(deanonymized_response)39 