mariordoniez commited on
Commit
82cac9f
1 Parent(s): aa21356

Upload 8 files

Browse files
README.md CHANGED
@@ -1,3 +1,148 @@
1
  ---
2
- license: mit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3
  ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ---
2
+ license: other
3
+ base_model: microsoft/phi-1_5
4
+ tags:
5
+ - generated_from_trainer
6
+ - sales
7
+ model-index:
8
+ - name: salesGPT_v2
9
+ results: []
10
+ datasets:
11
+ - goendalf666/sales-conversations-2
12
+ - goendalf666/sales-conversations-instruction-ext
13
+ - goendalf666/sales-conversations-instruction-base
14
+ - goendalf666/sales-textbook_for_convincing_and_selling
15
+ language:
16
+ - en
17
+ pipeline_tag: text-generation
18
  ---
19
+
20
+ <!-- This model card has been generated automatically according to the information the Trainer had access to. You
21
+ should probably proofread and complete it, then remove this comment. -->
22
+
23
+ # salesGPT_v2
24
+
25
+ **Model Card for salesGPT_v2**
26
+
27
+ ### Model Description
28
+ salesGPT_v2, derived from microsoft/phi-1_5, is specialized in simulating sales conversations, wherein it understands customer requirements, manages objections, and suggests suitable products or services. It was fine-tuned on a variety of sales-related datasets and seems proficient in initiating conversations, asking pertinent questions, and sustaining interactive dialogues with users.
29
+
30
+ ### Related Ressources
31
+
32
+ Github: https://github.com/tom813/salesGPT_foundation
33
+ salesGPT_v1: https://huggingface.co/goendalf666/salesGPT_v1
34
+
35
+ ![image/png](https://cdn-uploads.huggingface.co/production/uploads/63797fcb2cb50dda39d8aec6/re7MmsaYNzTYVH2jEXDDu.png)
36
+
37
+ ### Intended Uses & Limitations
38
+ **Intended Uses:**
39
+ - Simulating sales conversations for training or evaluation purposes.
40
+ - Providing guidelines or suggested dialogues for sales representatives.
41
+
42
+ **Limitations:**
43
+ - The model might repetitively ask questions in certain scenarios.
44
+ - May struggle with handling customers who lack specific preferences or knowledge about products.
45
+ - The objection handling could be more focused on convincing techniques rather than objective criteria.
46
+ - Challenges in providing appropriate suggestions for customers without specific needs.
47
+ - Limited effectiveness in handling financial and budgetary conversations or sensitivities.
48
+
49
+ ### Training and Evaluation Data
50
+ **Training Data:**
51
+ 1. **Textbook v1 Dataset**
52
+ - URL: [Dataset](https://huggingface.co/datasets/goendalf666/sales-textbook_for_convincing_and_selling)
53
+ - Content: Textbook content for sales, derived from structural points and detailed subpoints created through API calls.
54
+
55
+ 2. **Sales Conversation Dataset**
56
+ - URL: [Dataset](https://huggingface.co/datasets/goendalf666/sales-conversations)
57
+ - Content: Sales conversations, generated based on the chapters of the textbook.
58
+
59
+ 3. **Sales Conversations Instruction Base Dataset**
60
+ - URL: [Dataset](https://huggingface.co/datasets/goendalf666/sales-conversations-instruction-base)
61
+ - Content: Extended sales conversations with structured dialogues.
62
+
63
+ 4. **Sales Conversations Instruction Extension Dataset**
64
+ - URL: [Dataset](https://huggingface.co/datasets/goendalf666/sales-conversations-instruction-ext)
65
+ - Content: Updates based on real conversations with the model to improve its proficiency in unconvincing cases.
66
+
67
+ **Evaluation Data:**
68
+ - More information is needed regarding how and where the model was evaluated. If it was assessed on a separate test set, providing access and details to that dataset would be crucial.
69
+
70
+ ### Training Procedure
71
+ Fine-tuning of salesGPT_v2 was executed in three phases using the LoRa approach with Rank 64:
72
+ 1. Training on a textbook for 20k steps.
73
+ 2. Training on sales conversations for 40k steps, resulting in salesGPT_v1.
74
+ 3. Training on sales conversations instruction for 40k steps, evolving into salesGPT_v2.
75
+
76
+ Hyperparameters used during training:
77
+ - Learning rate: 0.0002
78
+ - Train batch size: 2
79
+ - Eval batch size: 8
80
+ - Seed: 42
81
+ - Optimizer: Adam
82
+ - LR scheduler type: Cosine
83
+ - Training steps: 40,000
84
+ - [Additional parameters...](https://huggingface.co/goendalf666/salesGPT_v2)
85
+
86
+ Model size details:
87
+ - Trainable params: 18,874,368
88
+ - All params: 1,437,145,088
89
+ - Trainable%: 1.313323766514519
90
+
91
+ ### Results
92
+ While salesGPT_v2 showcases notable capabilities like initiating a structured dialogue and asking relevant questions, there are some key areas of improvement and observations:
93
+ - The model tends to keep asking questions if a user provides vague information.
94
+ - In some cases, it's not assertive enough to suggest a product when a customer lacks preferences.
95
+ - It tends to leverage objective criteria over convincing strategies during objections.
96
+ - Needs better handling of conversations regarding budgetary or financial concerns.
97
+
98
+ ### Example Usage & Conversations
99
+ #### Example 1:
100
+ **Customer**: I am interested in buying a new laptop.
101
+ **salesGPT_v2**: I understand. Could you please tell me more about your specific requirements and budget?
102
+
103
+ #### Example 2:
104
+ **Customer**: Oh I don't know how I should explain this to my wife. I said we can't go to vacation because we don't have any money.
105
+ **salesGPT_v2**: I see. Can you please provide more details about your financial situation and the specific expenses you are concerned about?
106
+
107
+ These examples underline the model's capability to engage in sales dialogues and also hint at its limitations, such as possibly prying too much into a customer's personal financial situation.
108
+
109
+ ### Future Directions & Improvement
110
+ - Enhancement in handling objections by focusing more on persuasive techniques and emotional intelligence.
111
+ - Improving suggestion-making capability especially when customers are indecisive.
112
+ - Better navigation through the conversation that involves budgetary and financial aspects without seeming insensitive or intrusive.
113
+ - Striking a balance between being informative and being too technical in its product descriptions.
114
+ - Possible implementation of more ethical and privacy-guided conversation guidelines, especially in discussing customers' financial capacities.
115
+
116
+ ### Ethical Considerations
117
+ The model’s tendency to repeatedly ask for specific information, especially related to personal financial details, raises ethical concerns regarding privacy and data sensitivity. Care must be taken to ensure the model respects user privacy and does not persistently probe for personal or sensitive information.
118
+
119
+ ### Conclusion
120
+ salesGPT_v2 offers a foundation for simulating sales conversations with potential for future refinement in handling objections, making product suggestions, and managing conversations delicately around financial discussions. Future versions might seek to refine its balance between being convincingly persuasive and remaining ethically and emotionally intelligent within dialogues.
121
+
122
+ ### Inference
123
+
124
+ ```
125
+ from transformers import AutoModelForCausalLM, AutoTokenizer
126
+
127
+ # Initialize the model and tokenizer
128
+ cuda = "cuda:0" if torch.cuda.is_available() else ""
129
+ model = AutoModelForCausalLM.from_pretrained("goendalf666/salesGPT_v2", trust_remote_code=True, torch_dtype=torch.float32, device_map={"":0})
130
+ tokenizer = AutoTokenizer.from_pretrained("microsoft/phi-1_5", trust_remote_code=True, device_map={"":0})
131
+
132
+ inputs = tokenizer(conversation_text, return_tensors="pt", return_attention_mask=False)
133
+ inputs.to(cuda)
134
+
135
+ # Generate response
136
+ outputs = model.generate(**inputs, max_length=512)
137
+ response_text = tokenizer.batch_decode(outputs)[0]
138
+ ```
139
+ Or
140
+
141
+ Inference script: https://github.com/tom813/salesGPT_foundation/blob/main/inference.py
142
+
143
+ ### Framework versions
144
+
145
+ - Transformers 4.32.1
146
+ - Pytorch 2.1.0.dev20230829+cu121
147
+ - Datasets 2.14.5
148
+ - Tokenizers 0.13.3
adapter_config.json ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "auto_mapping": null,
3
+ "base_model_name_or_path": "microsoft/phi-1_5",
4
+ "bias": "none",
5
+ "fan_in_fan_out": false,
6
+ "inference_mode": true,
7
+ "init_lora_weights": true,
8
+ "layers_pattern": null,
9
+ "layers_to_transform": null,
10
+ "lora_alpha": 16,
11
+ "lora_dropout": 0.05,
12
+ "modules_to_save": null,
13
+ "peft_type": "LORA",
14
+ "r": 64,
15
+ "revision": "271c3397ab4e1f8f4e49868b1e8ba0be95363c88",
16
+ "target_modules": [
17
+ "Wqkv",
18
+ "out_proj"
19
+ ],
20
+ "task_type": "CAUSAL_LM"
21
+ }
adapter_model.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3e896326bf0827004d90f3ddd361d14ec98a8bf8e62aa1b490f90eab86cc9e10
3
+ size 75531342
config.json ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "microsoft/phi-1_5",
3
+ "activation_function": "gelu_new",
4
+ "architectures": [
5
+ "MixFormerSequentialForCausalLM"
6
+ ],
7
+ "auto_map": {
8
+ "AutoConfig": "microsoft/phi-1_5--configuration_mixformer_sequential.MixFormerSequentialConfig",
9
+ "AutoModelForCausalLM": "microsoft/phi-1_5--modeling_mixformer_sequential.MixFormerSequentialForCausalLM"
10
+ },
11
+ "embd_pdrop": 0.0,
12
+ "initializer_range": 0.02,
13
+ "layer_norm_epsilon": 1e-05,
14
+ "model_type": "mixformer-sequential",
15
+ "n_embd": 2048,
16
+ "n_head": 32,
17
+ "n_inner": null,
18
+ "n_layer": 24,
19
+ "n_positions": 2048,
20
+ "resid_pdrop": 0.0,
21
+ "rotary_dim": 32,
22
+ "tie_word_embeddings": false,
23
+ "torch_dtype": "float32",
24
+ "transformers_version": "4.32.1",
25
+ "vocab_size": 51200
26
+ }
generation_config.json ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ {
2
+ "_from_model_config": true,
3
+ "transformers_version": "4.32.1"
4
+ }
pytorch_model.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:d121d287c708fc6d08043ed171921e4b9fb68d00f452c1d23ea1c55292bd1d5c
3
+ size 5673168010
training_args.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4acc51c52c33dccf606b129498bc828aef164175ad72fb3176ccedff193d49b0
3
+ size 4536