llumo 0.2.22__py3-none-any.whl → 0.2.23__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
llumo/client.py CHANGED
@@ -720,6 +720,7 @@ class LlumoClient:
720
720
 
721
721
  inputDict = {key: row[key] for key in keys if key in row}
722
722
  output = row.get(outputColName, "")
723
+ intermediateSteps = row.get("intermediateSteps", "")
723
724
 
724
725
 
725
726
  rowID = f"{int(time.time() * 1000)}{uuid.uuid4()}".replace("-", "")
@@ -740,6 +741,7 @@ class LlumoClient:
740
741
  "tools": tools,
741
742
  "groundTruth": groundTruth,
742
743
  "messageHistory": messageHistory,
744
+ "intermediateSteps": intermediateSteps,
743
745
  },
744
746
  "definition": evalDefinition,
745
747
  "model": model,
@@ -871,6 +873,12 @@ class LlumoClient:
871
873
  print(
872
874
  "LLUMO’s intuitive UI is ready—start exploring and experimenting with your logs now. Visit https://app.llumo.ai/evallm to see the results."
873
875
  )
876
+ if getDataFrame:
877
+ return LlumoDataFrameResults(dataframe,evals=self.evals,evalData=self.evalData,definationMapping=self.definationMapping)
878
+ else:
879
+ data=dataframe.to_dict(orient="records")
880
+ return LlumoDictResults(data,evals=self.evals,evalData=self.evalData,definationMapping=self.definationMapping)
881
+
874
882
  else:
875
883
  if getDataFrame:
876
884
  return LlumoDataFrameResults(dataframe,evals=self.evals,evalData=self.evalData,definationMapping=self.definationMapping)
@@ -935,6 +943,7 @@ class LlumoClient:
935
943
  ):
936
944
  print(
937
945
  "LLUMO’s intuitive UI is ready—start exploring and experimenting with your logs now. Visit https://app.llumo.ai/evallm to see the results.")
946
+
938
947
  else:
939
948
  if getDataFrame == True and toEvaluate == True:
940
949
  return LlumoDataFrameResults(working_df, evals=self.evals, evalData=self.evalData,
@@ -1231,6 +1240,20 @@ class LlumoClient:
1231
1240
  ):
1232
1241
  print(
1233
1242
  "LLUMO’s intuitive UI is ready—start exploring and experimenting with your logs now. Visit https://app.llumo.ai/evallm to see the results.")
1243
+ if getDataFrame == True and toEvaluate == True:
1244
+ return LlumoDataFrameResults(working_df, evals=self.evals, evalData=self.evalData,
1245
+ definationMapping=self.definationMapping)
1246
+
1247
+ elif getDataFrame == False and toEvaluate == True:
1248
+ data = working_df.to_dict(orient="records")
1249
+ return LlumoDictResults(data, evals=self.evals, evalData=self.evalData,
1250
+ definationMapping=self.definationMapping)
1251
+
1252
+ elif getDataFrame== True and toEvaluate == False:
1253
+ return working_df
1254
+
1255
+ elif getDataFrame == False and toEvaluate == False :
1256
+ return working_df.to_dict(orient = "records")
1234
1257
  else:
1235
1258
  if getDataFrame == True and toEvaluate == True:
1236
1259
  return LlumoDataFrameResults(working_df, evals=self.evals, evalData=self.evalData,
@@ -1468,6 +1491,12 @@ class LlumoClient:
1468
1491
  ):
1469
1492
  print(
1470
1493
  "LLUMO’s intuitive UI is ready—start exploring and experimenting with your logs now. Visit https://app.llumo.ai/evallm to see the results.")
1494
+ if getDataFrame:
1495
+ return working_df
1496
+
1497
+ else:
1498
+ data = working_df.to_dict(orient="records")
1499
+ return data
1471
1500
  else:
1472
1501
  if getDataFrame:
1473
1502
  return working_df
llumo/helpingFuntions.py CHANGED
@@ -227,7 +227,7 @@ def createColumn(workspaceID, dataframe, playgroundID, promptText=None,queryColN
227
227
  "playgroundID": playgroundID,
228
228
  "columnListToUpload": [],
229
229
  }
230
- allEvals = ['Response Completeness', 'Response Bias', 'Response Harmfulness', 'Input Toxicity', 'Input Harmfulness', 'Context Utilization', 'Relevance Retention', 'Semantic Cohesion', 'Final Task Alignment', 'Tool Reliability', 'Response Correctness', 'Response Toxicity', 'Input Bias', 'Input Relevancy', 'Redundancy Reduction', 'Response Sentiment', 'Tool Selection Accuracy', 'Stepwise Progression', 'Hallucination', 'Faithfulness', 'Answer Relevancy', 'Context Precision', 'Answer Similarity', 'Harmfulness', 'Maliciousness', 'Coherence', 'Answer Correctness', 'Context Recall', 'Context Entity Recall', 'Conciseness', 'customEvalColumn', 'Groundedness', 'Memory Utilization', 'Input Relevancy (Multi-turn)']
230
+ allEvals = ['Response Completeness', 'Response Bias', 'Response Harmfulness', 'Input Toxicity', 'Input Harmfulness', 'Context Utilization', 'Relevance Retention', 'Semantic Cohesion', 'Final Task Alignment', 'Tool Reliability', 'Response Correctness', 'Response Toxicity', 'Input Bias', 'Input Relevancy', 'Redundancy Reduction', 'Response Sentiment', 'Tool Selection Accuracy', 'Stepwise Progression', 'Hallucination', 'Faithfulness', 'Answer Relevancy', 'Context Precision', 'Answer Similarity', 'Harmfulness', 'Maliciousness', 'Coherence', 'Answer Correctness', 'Context Recall', 'Context Entity Recall', 'Conciseness', 'customEvalColumn', 'Groundedness', 'Memory Utilization', 'Input Relevancy (Multi-turn)','PII Check','Prompt Injection']
231
231
 
232
232
  evalDependencies = checkDependency(_returnDepMapping=True)
233
233
 
@@ -537,19 +537,21 @@ def checkDependency(selectedEval:list = [], columns:list = [],tocheck=True,_retu
537
537
  'Relevance Retention': ['context', 'query'],
538
538
  'Semantic Cohesion': ['context'],
539
539
  'Final Task Alignment': ['query','output'],
540
- 'Tool Reliability': ['messageHistory'],
540
+ 'Tool Reliability': ['intermediateSteps'],
541
541
  'Response Correctness': ['output', 'query', 'context'],
542
542
  'Response Toxicity': ['output'],
543
543
  'Input Bias': ['query'],
544
544
  'Input Relevancy': ['context', 'query'],
545
545
  'Redundancy Reduction': ['context'],
546
546
  'Response Sentiment': ['output'],
547
- 'Tool Selection Accuracy': ['tools', 'messageHistory'],
548
- 'Stepwise Progression': ['tools', 'messageHistory'],
547
+ 'Tool Selection Accuracy': ['tools', 'intermediateSteps'],
548
+ 'Stepwise Progression': ['tools', 'intermediateSteps'],
549
549
  'Hallucination': ['query', 'context', 'output'],
550
550
  'Groundedness': ['groundTruth', 'output'],
551
551
  'Memory Utilization': ['context', 'messageHistory'],
552
- 'Input Relevancy (Multi-turn)': ['context', 'query']
552
+ 'Input Relevancy (Multi-turn)': ['context', 'query'],
553
+ 'PII Check':["query","output"],
554
+ 'Prompt Injection':["query"]
553
555
  }
554
556
  if _returnDepMapping == True:
555
557
  return metricDependencies
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: llumo
3
- Version: 0.2.22
3
+ Version: 0.2.23
4
4
  Summary: Python SDK for interacting with the Llumo ai API.
5
5
  Home-page: https://www.llumo.ai/
6
6
  Author: Llumo
@@ -1,16 +1,16 @@
1
1
  llumo/__init__.py,sha256=YVBkF1fiXFBd_zzySi9BDWgX8MJuLBJ-oF8538MrnDU,256
2
2
  llumo/chains.py,sha256=6lCgLseh04RUgc6SahhmvQj82quay2Mi1j8gPUlx8Es,2923
3
- llumo/client.py,sha256=HuqYBLvqWfJA5HRkMqxpiEsTiLbVCv6mL4t6guRROWU,63329
3
+ llumo/client.py,sha256=iVcdoGncHNrABl3qImBzwwQ_mf48M1Nte3nUEoSbQ2Y,64867
4
4
  llumo/exceptions.py,sha256=Vp_MnanHbnd1Yjuoi6WLrKiwwZbJL3znCox2URMmGU4,2032
5
5
  llumo/execution.py,sha256=nWbJ7AvWuUPcOb6i-JzKRna_PvF-ewZTiK8skS-5n3w,1380
6
6
  llumo/functionCalling.py,sha256=D5jYapu1rIvdIJNUYPYMTyhQ1H-6nkwoOLMi6eekfUE,7241
7
7
  llumo/google.py,sha256=3S_aRtbtlctCXPGR0u4baLlkyFrsjd02vlUCkoRPA5U,2147
8
- llumo/helpingFuntions.py,sha256=DDvvr1LO57uMZQekncYrv8IpE4QDG2qf9pBP6DIvrLU,25523
8
+ llumo/helpingFuntions.py,sha256=SmQvE3_9aOzKJa1wAmp6UhOfW1eWwkWcNn_Jwhw4TG8,25641
9
9
  llumo/models.py,sha256=aVEZsOOoQx5LeNtwSyBxqvrINq0izH3QWu_YjsMPE6o,2910
10
10
  llumo/openai.py,sha256=DGhEwQIJIIycGpw3hYQnyxdj6RFVpZ-gay-fZGqtkhU,3013
11
11
  llumo/sockets.py,sha256=pBDo-U65hMIMwKMwZQl3iBkEjISEt-9BkXxZTWfSHF4,6116
12
- llumo-0.2.22.dist-info/licenses/LICENSE,sha256=tF9yAcfPV9xGT3ViWmC8hPvOo8BEk4ZICbUfcEo8Dlk,182
13
- llumo-0.2.22.dist-info/METADATA,sha256=Xodp45eD66Ym9HGYaGahLGpaCQL1A-eDPZY0z7tXx38,1558
14
- llumo-0.2.22.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
15
- llumo-0.2.22.dist-info/top_level.txt,sha256=d5zUTMI99llPtLRB8rtSrqELm_bOqX-bNC5IcwlDk88,6
16
- llumo-0.2.22.dist-info/RECORD,,
12
+ llumo-0.2.23.dist-info/licenses/LICENSE,sha256=tF9yAcfPV9xGT3ViWmC8hPvOo8BEk4ZICbUfcEo8Dlk,182
13
+ llumo-0.2.23.dist-info/METADATA,sha256=6FgzHIZZ7ZEWk1q7DDZIBantpqkk5SH-8EuPtNOPoyc,1558
14
+ llumo-0.2.23.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
15
+ llumo-0.2.23.dist-info/top_level.txt,sha256=d5zUTMI99llPtLRB8rtSrqELm_bOqX-bNC5IcwlDk88,6
16
+ llumo-0.2.23.dist-info/RECORD,,
File without changes