Nesta lição, criaremos um chatbot legal eficaz que usa ferramentas abertas. Fornece um guia de etapas para a ação para criar chatbot usando o Bigscience / T0PP LLM, os transformadores de rosto Kwaighting e o Pytorch. Visitaremos a configuração do modelo no modelo, a preparação para o desempenho usando o Pytroch e para garantir um assistente jurídico funcional e disponível.
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer
model_name = "bigscience/T0pp" # Open-source and available
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForSeq2SeqLM.from_pretrained(model_name)
Primeiro, carregamos o Bigscience / T0P, Open LLM, usando o rosto transformado na face. Ele inicia o tokozer de texto para inserir o texto para inserir o AutoDelFormB2Seqlm, permite que o modelo execute as atividades de gerenciamento de texto, como responder a perguntas legais.
import spacy
import re
nlp = spacy.load("en_core_web_sm")
def preprocess_legal_text(text):
text = text.lower()
text = re.sub(r's+', ' ', text) # Remove extra spaces
text = re.sub(r'[^a-zA-Z0-9s]', '', text) # Remove special characters
doc = nlp(text)
tokens = [token.lemma_ for token in doc if not token.is_stop] # Lemmatization
return " ".join(tokens)
sample_text = "The contract is valid for 5 years, terminating on December 31, 2025."
print(preprocess_legal_text(sample_text))
Depois disso, usamos documentação legal usando expressões regulares e expressões comuns para garantir que a purificação e o planejado das funções de PNL. Começa a converter o texto em um local pequeno, remove espaços adicionais e caracteres especiais usando o Regex e, em seguida, tokeniza e está no texto usando o tubo NLP do NLP do PNL do NLP. Além disso, as palavras para interromper apenas as palavras lógicas, tornando bom processar documentação legal nos aplicativos de IA. Um documento limpo é eficaz na manutenção dos modelos de máquinas e idiomas, como Bigscience / T0P, que promove a precisão das respostas legais.
def extract_legal_entities(text):
doc = nlp(text)
entities = [(ent.text, ent.label_) for ent in doc.ents]
return entities
sample_text = "Apple Inc. signed a contract with Microsoft on June 15, 2023."
print(extract_legal_entities(sample_text))
Aqui, lançamos negócios legítimos nas Escrituras para a Adentidade Antenciosa de Spay (NEER). O funcionário processa a instalação do modelo picante, apontando e emitindo empresas importantes, como organizações, datas e nomes oficiais. Retorna uma lista de tuplas, cada uma contém o negócio reconhecido com sua categoria (por exemplo, organização, data ou nome estatutário).
import faiss
import numpy as np
import torch
from transformers import AutoModel, AutoTokenizer
embedding_model = AutoModel.from_pretrained("sentence-transformers/all-MiniLM-L6-v2")
embedding_tokenizer = AutoTokenizer.from_pretrained("sentence-transformers/all-MiniLM-L6-v2")
def embed_text(text):
inputs = embedding_tokenizer(text, return_tensors="pt", padding=True, truncation=True)
with torch.no_grad():
output = embedding_model(**inputs)
embedding = output.last_hidden_state.mean(dim=1).squeeze().cpu().numpy() # Ensure 1D vector
return embedding
legal_docs = [
"A contract is legally binding if signed by both parties.",
"An NDA prevents disclosure of confidential information.",
"A non-compete agreement prohibits working for a competitor."
]
doc_embeddings = np.array([embed_text(doc) for doc in legal_docs])
print("Embeddings Shape:", doc_embeddings.shape) # Should be (num_samples, embedding_dim)
index = faiss.IndexFlatL2(doc_embeddings.shape[1]) # Dimension should match embedding size
index.add(doc_embeddings)
query = "What happens if I break an NDA?"
query_embedding = embed_text(query).reshape(1, -1) # Reshape for FAISS
_, retrieved_indices = index.search(query_embedding, 1)
print(f"Best matching legal text: {legal_docs[retrieved_indices[0][0]]}")
Com o código acima, criamos documentos restauradores usando o FAISS para procurar pesquisas semânticas. Comece a carregar o modelo para instalar o modelo de face para produzir preços de texto. INFED_TEXT Processos de documentos e perguntas oficiais instalando o conteúdo usando o minilm. Essa incorporação é mantida no índice de vetores do FASS, que permite a mesma pesquisa rápida.
def legal_chatbot(query):
inputs = tokenizer(query, return_tensors="pt", padding=True, truncation=True)
output = model.generate(**inputs, max_length=100)
return tokenizer.decode(output[0], skip_special_tokens=True)
query = "What happens if I break an NDA?"
print(legal_chatbot(query))
Por fim, descrevemos o chatbot legal da IA como produzindo respostas em retornos legais usando o modelo treinado original. A atividade legal_chatbot leva a pergunta de um usuário, o processamento usa o tokenzer e gera feedback sobre o modelo. A resposta foi limitada ao texto, removendo quaisquer tokens especiais. Quando a pergunta é como “O que acontece se eu quebrar a NNA?” Instalando, o Chatbot fornece a resposta correta para a IA.
Em conclusão, ao combinar o Bigscience / T0PP LLM, segurando o Face Transformed Face, e Pytorch, mostrou como podemos construir um chatbot poderoso e legal usando recursos abertos usando recursos abertos. O projeto é uma base sólida para as ferramentas fiéis a IA, alimentadas por IA, tornando acessível e automático de assistência jurídica.
Aqui está o Caderno de Colab do projeto acima. Além disso, não se esqueça de seguir Sane e junte -se ao nosso Estação de telégrafo incluindo LinkedIn grtópico. Não se esqueça de se juntar ao nosso 80k + ml subreddit.
🚨 Pesquisa recomendada recomendada para nexo
O Asphazzaq é um Markteach Media Inc. De acordo com um negócio e desenvolvedor de visualização, a ASIFI está comprometida em integrar uma boa inteligência social. Sua última tentativa é lançada pelo lançamento do Plano de Química para uma Inteligência, Marktechpost, uma prática íntima devastadora de um aprendizado de máquina e problemas de aprendizado profundo que são de forma clara e facilmente compreendida. A plataforma está aderindo a mais de dois milhões de visitas à lua, indicando sua popularidade entre o público.
