前言
近期,GPTs 应用商店正式发布,为广大开发者提供了一个巨大的商机。在这个新的人工智能生成代码(AIGC)方向中,有许多令人兴奋的发展,特别是在与AI电商领域的结合上。本文将探讨AIGC在商业应用中的潜力,以及如何利用Python
、LangChain
、Flask
、Copilt
等工具提高开发效率,并让任何人都能轻松拥有数据分析的能力。
正文
AIGC与AI电商的结合
GPTs 应用商店的正式发布
标志着AIGC在商业领域的崭露头角。在探索这个新领域的商机时,我们应该寻找那些拥有AIGC思维的公司,尤其是在AI电商领域。AI电商可以通过将人工智能与商业运营相结合,提供更智能、个性化的购物体验,为企业和消费者创造更多价值。
Python与AIGC工具的结合
在AIGC方向中,Python
仍然是一个不可或缺的工具。LangChain
和后端API Flask
为开发者提供了丰富的功能,使其能够更轻松地与AIGC技术集成。这为开发者提供了更多灵活性和创造力,使他们能够更好地利用AIGC在不同领域的潜力。
生成代码与开发提效
Copilt
等工具在生成代码方面取得了显著的进展。通过AIGC技术,开发者可以更高效地生成代码,提高开发速度。特别是在SQL的生成和分析方面,Copilt的应用为开发者提供了更多可能性,使其能够更好地应对复杂的数据处理需求。
AIGC与自然语言处理的结合
AIGC不仅仅局限于生成代码,在自然语言处理
方面也有着广阔的应用前景。SQL已经不再是查询或数据分析的唯一选择,AIGC在自然语言处理方面的能力使得用户可以通过自然语言提出问题。ChatGPT等自然语言处理工具能够理解用户的需求,并生成相应的SQL查询,使新手用户也能快速上手学习数据分析技能。
新的数据库查询范式
随着AIGC技术的不断发展,出现了新的数据库查询范式
。用户只需通过提问,AIGC就能够利用自然语言处理能力生成SQL查询,然后自动执行并返回数据查询结果。这就形成了一种新的AI应用,也可以称之为AI Agent
。根据用户的需求,AIGC可以生成json或图表,为用户提供更直观、易懂的数据分析结果,让任何人都能拥有数据分析的能力。
实例
说了那么多,远不如我们直接试一试!让我们看看下面的例子
。
python复制代码# sqlite --- 一个轻量的关系型数据库,大佬一般在测试产品想法的时候用它
# 本地数据库 python自带
import sqlite3
# 数据库连接句柄
conn = sqlite3.connect('FlowerShop.db')
# 游标
cursor = conn.cursor()
# 执行sql sqlite完全支持sql三大范式
cursor.execute('''
CREATE TABLE FLOWERS(
ID INTEGER PRIMARY KEY,
Name TEXT NOT NULL,
Type TEXT NOT NULL,
Source TEXT NOT NULL,
PurchasePrice REAL,
SalePrice REAL,
StockQuantity INTEGER,
SoldQuantity INTEGER,
ExpiryDate DATE,
Description TEXT,
EntryDate DATE DEFAULT CURRENT_DATE
);
''')
# 给一些假数据
# 假数据指的是在开发和测试过程中使用的虚构数据,用于模拟真实数据的特征和结构。
# 这些数据通常是为了测试软件的功能、性能和稳定性而创建的,以便在没有真实数据的情况下进行测试和开发。
# 假数据通常包括各种类型的数据,如姓名、地址、日期、数字等,以及一些随机生成的数据,以便模拟真实环境中的数据情况。
# 在开发和测试过程中,假数据可以帮助开发人员和测试人员快速构建测试环境,进行测试和调试,而不必依赖于真实数据。
flowers = [
('Rose', 'Flower', 'France', 1.2, 2.5, 100, 10, '2023-12-31', 'A beautiful red rose'),
('Tulip', 'Flower', 'Netherlands', 0.8, 2.0, 150, 25, '2024-12-31', 'A colorful tulip'),
('Lily', 'Flower', 'China', 1.5, 3.0, 80, 5, '2023-12-31', 'An elegant white lily'),
('Daisy', 'Flower', 'USA', 0.7, 1.8, 120, 15, '2023-12-31', 'A cheerful daisy flower'),
('Orchid', 'Flower', 'Brazil', 2.0, 4.0, 50, 2, '2023-12-31', 'A delicate purple orchid')
]
# 把假数据插入数据库
for flower in flowers:
cursor.execute('''
INSERT INTO Flowers(Name, Type, Source, PurchasePrice, SalePrice, StockQuantity, SoldQuantity, ExpiryDate, Description )
VALUES(?,?,?,?,?,?,?,?,?);
''', flower)
# 提交这次事务
conn.commit()
# 关闭数据库连接 为了并发 减少线程数
conn.close()
python复制代码# text2SQL
# 安装openai
!pip install openai==0.28.1
# 安装AI应用开发框架
!pip install langchain
# 安装了langchain-experimental包,该包包含了一些最新的实验性功能和工具
!pip install langchain-experimental
python复制代码# langchain 将LLM和用户间chain起来 连数据库
# langchain 有一个模块叫utilities 工具库
from langchain.utilities import SQLDatabase
# 大模型模块
from langchain.llms import OpenAI
from langchain_experimental.sql import SQLDatabaseChain
# 拿到数据库对象
db = SQLDatabase.from_uri("sqlite:///FlowerShop.db")
# 返回OpenAI实例
llm = OpenAI(temperature=0, verbose=True, api_key='你的api_key')
# 将数据库对象和OpenAI实例通过SQLDatabaseChain进行链式连接
# 通过`db_chain.run`方法,用户可以向链发送一个自然语言查询:"有多少种不同的鲜花?"。
# `response`将返回由大型语言模型生成的查询结果,并通过`print`语句输出
db_chain = SQLDatabaseChain.from_llm(llm, db, verbose=True)
response = db_chain.run("有多少种不同的鲜花?")
print(response)
让我们看看返回的结果:
Entering new SQLDatabaseChain chain...
:这是一个提示,表示一个新的SQLDatabaseChain
链即将开始执行。有多少种不同的鲜花
:这是用户提出的自然语言查询,即“有多少种不同的鲜花”。SQLQuery: SELECT COUNT(DISTINCT Name) FROM FLOWERS
:这是SQLDatabaseChain
根据用户的自然语言查询生成的相应SQL查询。在这里,它统计了FLOWERS
表中不同鲜花的数量。SQLResult: [(5,)]
:这是SQL查询的结果,表明在数据库中有5种不同的鲜花。Answer: 5
:这是最终的回答,表示在数据库中有5种不同的鲜花。Finished chain.
:这也是提示,表示整个SQLDatabaseChain
链的执行已经完成。 同样的方法我们可以随意地进行各种各样的提问:
python复制代码response = db_chain.run("哪种鲜花的存货数量最少?")
print(response)
python复制代码response = db_chain.run("平均销售价格是多少?")
print(response)
这样简单直接的提问,例如“有多少种不同的鲜花”,展现了AIGC(人工智能生成代码)的强大之处。通过结合自然语言处理和数据库查询,用户可以以一种自然而直接的方式提出问题,而不必深入了解SQL语法或数据库结构。这种简单直接的提问方式使得任何人都能够轻松地与数据库进行交互,获取需要的信息。
在这个过程中,langchain
框架的灵活性得以体现,它将大型语言模型(LLM)
和数据库通过链式连接,使得用户能够以自然语言形式提问,而框架则负责将问题翻译成相应的SQL查询,并将结果返回给用户。这种交互方式不仅提高了用户体验,也使得人工智能在数据查询和分析方面的应用更加普及。
因此,通过这种简单直接的提问方式,AIGC不仅让开发者更容易构建智能应用,也让普通用户能够轻松地利用人工智能的力量进行数据查询,拓宽了人们与技术互动的可能性。这种简便的交互方式无疑为人工智能在各个领域的普及奠定了更加广泛的基础。
结语
在AIGC与商业应用的结合中,我们看到了无限的可能性。通过将AIGC技术与不同领域的工具结合,我们可以创造出更加智能、高效的解决方案,为企业和个人带来更多的价值。未来,随着AIGC技术的不断发展,我们相信会看到更多创新的应用场景,推动人工智能在商业领域的广泛应用!如果对文章感兴趣的话,还希望能给博主一个免费的小心心♡呀~