大语言模型可以接受训练,完成许多任务。其中最广为人知的用途之一是作为生成式人工智能:当收到提示或被问到问题时,它们可以生成文本作为答复。例如,公开的大语言模型 ChatGPT 可以根据用户输入生成文章、诗歌和其他文本形式。
任何大型、复杂的数据集都可用于训练大语言模型,包括编程语言。一些大语言模型可以帮助程序员编写代码。他们可以根据要求编写函数 - 或者,给定一些代码作为起点,他们可以完成程序的编写。大语言模型还可用于:
- 情感分析
- DNA研究
- 客户服务
- 聊天机器人
- 网上搜索
现实世界的大语言模型示例包括 ChatGPT(来自 OpenAI)、Bard(Google)、Llama(Meta)和 Bing Chat(微软)。 GitHub 的 Copilot 是另一个例子,但用于编码而不是自然的人类语言。
创意对比示意图
🎯目的和对比摘要
- 衡量大预言模型的构思能力
- 审查定性分析创意的新颖性和可行性
- 使用自然语言处理作为研究试验台
- 定义主题避免模型和人类之间的创造范围导致的偏差,构建创意生成模板
- 定义审查评分标准
Python大语言
大语言模型的闪光点
- 内容创作:从撰写营销文案到创作诗歌,大语言模型可以协助生成创意文本内容。
- 机器翻译:打破语言障碍,模型提供实时翻译,弥合沟通差距。
- 代码生成和完成:模型可以建议代码片段,甚至完成简单的程序,帮助开发人员完成工作流程。
- 聊天机器人和虚拟助手:模型为对话式 AI 体验提供支持,使与机器的互动更加自然、更具吸引力。
from transformers import pipeline
text_generator = pipeline("text-generation")
prompt = "Once upon a time, there was a brave knight..."
generated_text = text_generator(prompt)
print(generated_text[0]["generated_text"])
该代码将根据提示继续创作,展示大语言模型创建遵循主题和风格的文本的能力。
情感分析
from transformers import pipeline
sentiment_analyzer = pipeline("sentiment-analysis")
sentences = [
"This movie is absolutely fantastic! I loved it.",
"The food was disappointing. It was bland and overpriced.",
"This book is a must-read for anyone interested in history.",
"The service at this hotel was terrible. I wouldn't stay here again.",
]
for sentence in sentences:
sentiment = sentiment_analyzer(sentence)[0]
print(f"Sentence: {sentence}")
print(f"Sentiment: {sentiment['label']} ({sentiment['score']:.2f})")
我们将介绍一个实际示例,该示例结合了股票价格分析、相关新闻的网络抓取和使用大型语言模型的情绪分析。此示例旨在让您了解 AI 技术如何用于财务洞察。
使用 yfinance 获取股票价格
import yfinance as yf
def get_stock_data(ticker):
stock = yf.Ticker(ticker)
data = stock.history(period='1y')
return data
抓取新闻
from bs4 import BeautifulSoup
import requests
def get_stock_news(ticker):
url = f'https://finance.yahoo.com/quote/{ticker}?p={ticker}&.tsrc=fin-srch'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
headlines = [headline.text for headline in soup.find_all('h3', class_='Mb(5px)')]
return headlines
情感分析
from transformers import pipeline
def analyze_sentiment(text):
sentiment_analyzer = pipeline('sentiment-analysis')
result = sentiment_analyzer(text)
return result[0]['label']
创建整体分析
stock_ticker = 'AAPL'
stock_data = get_stock_data(stock_ticker)
news_headlines = get_stock_news(stock_ticker)
sentiments = [analyze_sentiment(headline) for headline in news_headlines]
print(f"Stock Data for {stock_ticker}:\n{stock_data}")
print("\nNews Headlines:")
for headline, sentiment in zip(news_headlines, sentiments):
print(f"- {headline} (Sentiment: {sentiment})")