1. 安装
在使用DSPy Visualizer之前,需要确保已经安装了langwatch 以及 dspy 的python包。
pipinstalldspy-ai==2.4.12pipinstalllangwatch
2. 编写DSPy程序
本示例将编写简单的优化器使用示例,如图-1所示,DSPy的优化流程需要准备数据集、程序主体、优化器以及衡量指标,然后在固定数据集合衡量指标的情况下,调整程序主体和算法以达到优化的目的,具体步骤如下:
1)获取数据集,本示例中通过导入方式获取训练集和测试集。
importdspyfromget_datasetimportcustom_trainsetastrain_setfromget_datasetimportcustom_testsetastest_set
fromdspy.datasets.gsm8kimportgsm8k_metricfromdspy.telepromptimportBootstrapFewShot
#定义并设置大模型model_name='llama3'lm=dspy.OllamaLocal(model=model_name)dspy.settings.configure(lm=lm)
classCoT(dspy.Module):def__init__(self):super().__init__()self.prog=dspy.ChainOfThought("question->answer")defforward(self,question):returnself.prog(question=question)cot=CoT()
config=dict(max_bootstrapped_demos=4,max_labeled_demos=4,max_rounds=2)#Optimize!Usethe`gsm8k_metric`here.Ingeneral,themetricisgoingtotelltheoptimizerhowwellit'sdoing.teleprompter=BootstrapFewShot(metric=gsm8k_metric,**config)
importlangwatchlangwatch.login()langwatch.dspy.init(experiment="test",optimizer=teleprompter)optimized_cot=teleprompter.compile(cot,trainset=train_set)
由于langwatch已经提供了可视化的在线服务,因此在线方式无需启动可视化程序,之间获取API-Key即可,如下步骤所示:
2)本地运行程序,根据提示输入API-Key,并在 dashboard查看结果。
如上界面展示的为训练两步得到的可视化数据,可以看出在第一步时优化器得到了3个demo,第二步时,优化器得到了4个demo。
也可以点击具体的 Predictors、Examples、LLM Calls(图中LLM Call无信息,因为使用了LLama3本地访问,如果是OpenAI接口则有数据显示)查看详细信息。
1)下载github langwatch 仓库并 复制 langwatch/.env.example 中的文件内容到langwatch/.env
2)运行 docker compose up --build
| 欢迎光临 链载Ai (https://www.lianzai.com/) | Powered by Discuz! X3.5 |