themefinder 0.5.2__py3-none-any.whl → 0.5.3__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.

Potentially problematic release.


This version of themefinder might be problematic. Click here for more details.

themefinder/core.py CHANGED
@@ -95,7 +95,7 @@ async def find_themes(
95
95
  return {
96
96
  "question": question,
97
97
  "sentiment": sentiment_df,
98
- "topics": theme_df,
98
+ "themes": theme_df,
99
99
  "condensed_themes": condensed_theme_df,
100
100
  "refined_themes": refined_theme_df,
101
101
  "mapping": mapping_df,
@@ -224,7 +224,7 @@ async def theme_condensation(
224
224
  pd.DataFrame: DataFrame containing the condensed themes, where similar topics
225
225
  have been combined into broader categories.
226
226
  """
227
- logger.info(f"Running theme condensation on {len(themes_df)} responses")
227
+ logger.info(f"Running theme condensation on {len(themes_df)} themes")
228
228
  themes_df["response_id"] = range(len(themes_df))
229
229
 
230
230
  n_themes = themes_df.shape[0]
@@ -12,7 +12,7 @@ You will be given:
12
12
  Your task is to analyze each response and decide which topics are present. Guidelines:
13
13
  - You can only assign to a response to a topic in the provided TOPIC LIST
14
14
  - A response doesn't need to exactly match the language used in the TOPIC LIST, it should be considered a match if it expresses a similar sentiment.
15
- - You must use the alphabetic 'topic_id' to indicate which topic you have assigned.
15
+ - You must use the alphabetic 'topic_id' to indicate which topic you have assigned. Do not use the full topic description
16
16
  - Each response can be assigned to multiple topics if it matches more than one topic from the TOPIC LIST.
17
17
  - There is no limit on how many topics can be assigned to a response.
18
18
  - For each assignment provide a single rationale for why you have chosen the label.
@@ -22,7 +22,8 @@ Your task is to analyze each response and decide which topics are present. Guide
22
22
 
23
23
  You MUST include every response ID in the output.
24
24
  If the response can not be labelled return empty sections where appropriate but you MUST return an entry
25
- with the correct response ID for each input object
25
+ with the correct response ID for each input object.
26
+ You must only return the alphabetic topic_ids in the labels section.
26
27
 
27
28
  The final output should be in the following JSON format:
28
29
 
@@ -1,17 +1,18 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: themefinder
3
- Version: 0.5.2
3
+ Version: 0.5.3
4
4
  Summary: A topic modelling Python package designed for analysing one-to-many question-answer data eg free-text survey responses.
5
5
  License: MIT
6
6
  Author: i.AI
7
7
  Author-email: packages@cabinetoffice.gov.uk
8
- Requires-Python: >=3.12,<4.0
8
+ Requires-Python: >=3.10,<3.13
9
9
  Classifier: Intended Audience :: Developers
10
10
  Classifier: Intended Audience :: Science/Research
11
11
  Classifier: License :: OSI Approved :: MIT License
12
12
  Classifier: Programming Language :: Python :: 3
13
+ Classifier: Programming Language :: Python :: 3.10
14
+ Classifier: Programming Language :: Python :: 3.11
13
15
  Classifier: Programming Language :: Python :: 3.12
14
- Classifier: Programming Language :: Python :: 3.13
15
16
  Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
16
17
  Classifier: Topic :: Text Processing :: Linguistic
17
18
  Requires-Dist: boto3 (>=1.29,<2.0)
@@ -1,15 +1,15 @@
1
1
  themefinder/__init__.py,sha256=p6QoCgA-BYWljk8yPOeTgkNcN5m_gA_o3Q86Eh0QjSM,327
2
- themefinder/core.py,sha256=pDm6HTAbkk382THIHuFBN2qI5UIMDKJsfpsP2nBzUIg,17541
2
+ themefinder/core.py,sha256=B6Du59rPsZbBcP8tkKmXQn6h5vvLN_PZIferPnF3LNY,17538
3
3
  themefinder/llm_batch_processor.py,sha256=SDDeMJeX1J3u7FGFddRhVSxty6U8lFVXwG4eNI_0C5o,12573
4
4
  themefinder/prompts/consultation_system_prompt.txt,sha256=_A07oY_an4hnRx-9pQ0y-TLXJz0dd8vDI-MZne7Mdb4,89
5
5
  themefinder/prompts/sentiment_analysis.txt,sha256=e3DcUKga6pSFcfeo2TAq8x9LXk0YDV-D7P2gtymcyuc,1832
6
6
  themefinder/prompts/theme_condensation.txt,sha256=GFwwQO_oZHhqhPnAfTn887fDzAIVxKoCyj0hXagyBIU,1645
7
7
  themefinder/prompts/theme_generation.txt,sha256=JMXuNojxdSAcxPRU1Jg12Xunv_dX4hNvXYU2pXMWTAw,2500
8
- themefinder/prompts/theme_mapping.txt,sha256=_7AUGraX4LrnZywO3RiG58NkGbM9vaPwGI1r0dFNGik,2297
8
+ themefinder/prompts/theme_mapping.txt,sha256=nb_D7gwKGd8BzrAlzSZC3mQIPYaCRXdE6XmoJaJEKZQ,2405
9
9
  themefinder/prompts/theme_refinement.txt,sha256=HCgvWAoz-cpFgjX_QS_VVY0X06d4ds0ekBgcoWyFyfg,3360
10
10
  themefinder/prompts/theme_target_alignment.txt,sha256=-_ghr4--KAN6Tz8ExO9s2IXvI6pjWaEA_nG5L83GV5I,1035
11
11
  themefinder/themefinder_logging.py,sha256=n5SUQovEZLC4skEbxicjz_fOGF9mOk3S-Wpj5uXsaL8,314
12
- themefinder-0.5.2.dist-info/LICENCE,sha256=C9ULIN0ctF60ZxUWH_hw1H434bDLg49Z-Qzn6BUHgqs,1060
13
- themefinder-0.5.2.dist-info/METADATA,sha256=RBCyjI9-oU6hoC9MRcf9HEs4Sb_regeK8aoDAy_AQco,6431
14
- themefinder-0.5.2.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
15
- themefinder-0.5.2.dist-info/RECORD,,
12
+ themefinder-0.5.3.dist-info/LICENCE,sha256=C9ULIN0ctF60ZxUWH_hw1H434bDLg49Z-Qzn6BUHgqs,1060
13
+ themefinder-0.5.3.dist-info/METADATA,sha256=o9rzrhRK-4PMAv9wS8ZrnmTw1rTSYGU8zfPbB31r1DU,6483
14
+ themefinder-0.5.3.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
15
+ themefinder-0.5.3.dist-info/RECORD,,