First impression: Impressed

#2
by urtuuuu - opened

Seems to be a nice model if you need to learn languages or something :) Translate from one to another etc. A little problem is that i never know how to use promt format correctly in llama.cpp. This is how i use it : --in-prefix "<|START_OF_TURN_TOKEN|><|USER_TOKEN|><|END_OF_TURN_TOKEN|>" --in-suffix "<|START_OF_TURN_TOKEN|><|CHATBOT_TOKEN|>" -p "<|START_OF_TURN_TOKEN|><|SYSTEM_TOKEN|>You are Aya, a brilliant, sophisticated, multilingual AI-assistant trained to assist human users by providing thorough responses. You are able to interact and respond to questions in 23 languages and you are powered by a multilingual model built by Cohere For AI.<|END_OF_TURN_TOKEN|>"
The model seems to perform well :) But still maybe someone could correct this if i did it wrong.

PS: holy s... it even answered this pretty hard question, that very few models can answer :) : Sally (a girl) has 3 brothers. Each brother has 2 sisters. How many sisters does Sally have?
Let's analyze the relationships:

Sally is a girl with 3 brothers.
Each of her brothers has 2 sisters. Since siblings share the same parents, these 2 sisters must include Sally herself.

So, apart from Sally, there is one more sister besides her. Thus, Sally has 1 sister.

Also, looks like there is one annoying problem. Once you ask it to speak different language, or just translate something. How do you make it speak english again? :) Looks like its impossible to do. Doesn't matter how you tell it to speak english, it continues to speak that language.

Cohere For AI org
edited 24 days ago

Hi @urtuuuu , thank you for the great feedback. Glad you're liking the model!

Regarding prompt format, when prompting for generation the last two tokens should always be <|START_OF_TURN_TOKEN|><|CHATBOT_TOKEN|>.

for example if the system preamble is "you are a multilingual assistant named mystery bot", and the prompt is "who are you?" the input should be
<|START_OF_TURN_TOKEN|><|SYSTEM_TOKEN|>you are a multilingual assistant named mystery bot<|END_OF_TURN_TOKEN|><|START_OF_TURN_TOKEN|><|USER_TOKEN|>who are you?<|END_OF_TURN_TOKEN|><|START_OF_TURN_TOKEN|><|CHATBOT_TOKEN|>

if instead there is no system preamble (which is recommended btw), the input should be:
<|START_OF_TURN_TOKEN|><|USER_TOKEN|>who are you?<|END_OF_TURN_TOKEN|><|START_OF_TURN_TOKEN|><|CHATBOT_TOKEN|>

if you're using transformers the recommended way to automatically do this is by passing in messages format to tokenizer.apply_chat_template which does this all for you. This is shown as an example in our model card readme.

Also, looks like there is one annoying problem. Once you ask it to speak different language, or just translate something. How do you make it speak english again? :) Looks like its impossible to do. Doesn't matter how you tell it to speak english, it continues to speak that language.

regarding this, we've made some fixes for this on our end but it's possible the model may still miss this sometimes. Would just recommend trying again with a different prompt.I would also recommend trying out the 32B...this issue is more or less solved for the 32B.

Sign up or log in to comment