Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Cedille, the largest French language model, released in open source
240 points by MasterScrat 9 months ago | hide | past | favorite | 59 comments
We are excited to announce Cedille, the largest language model for French (6b parameters).

Demo: https://cedille.ai

Language models are general purpose AI systems that are able to solve a range of tasks by simply being prompted for it. It can be used for example to summarize text, do translations, or for idea generation & overcoming writer's block.

You may know GPT-3, the humongous model from OpenAI. Cedille is a similar model targeting the French demographic - but smaller, as we don’t yet have $1b in the bank like they do. Although GPT-3 supports multiple languages including French, our model is competitive with GPT-3 on a range of French tasks! Plus, of course we’re open source while they keep their model closed and heavily restrict access to it.

You can try it out right away from our playground: https://app.cedille.ai

We are proponents of “open AI” and as such have released a checkpoint for the world to use (MIT license): https://github.com/coteries/cedille-ai

One of the problems with large language models is the potentially toxic, sexist or in other ways unpleasant output. We tried our best to avoid this issue by doing extensive dataset filtering. As a result, our benchmark indicates that Cedille is indeed less toxic than GPT-3.




Some acknowledgements!

- Cedille is based on GPT-J, a model developed by the grassroot EleutherAI team: https://arankomatsuzaki.wordpress.com/2021/06/04/gpt-j/

- Cedille was also generously supported by the Google TRC program: https://sites.research.google/trc/about/


How much compute would you need to build a GPT3 like sized model in terms of number of GPUs (A100) and storage? Not considering the money aspect here.


Aside from creativity, is it much harder to compute french or other latin based languages compared to english? I'm not a linguist but just with conjugations the ruleset seems simpler with the latter. How does that reflect on the development of cedille ?


> [typed] Alors que nombre de ces gougnafiers m'etourdissaient les esgourdes...

> [generated] je ne pus m'empêcher de penser à cette phrase extraite de l'incipit de "l'Etranger" : "Il faut qu'une porte soit ouverte ou fermée. Si elle est ouverte, on entre. Si elle est fermée, on frappe.

Okay, I'm sold.


> [typed] C'est pas l'homme qui prend la mer. C'est la mer qui prend l'homme. Moi, la mer, elle m'a pris,

> [generated] elle m'a emporté, elle m'a ramené, elle m'a fait voyager. Mon rêve était de voyager. Mais trop pressée, je n'ai pas pu, j'ai pris l'avion. J'ai atterri à Marseille, j'ai pris le bus

Almost like you could sing along !


For the non french, it's the beginning of a famous song by Renaud, "La mer".

And the generated lyrics could fit the tempo of the song but mostly make it very funny! I'd laugh to hear Renaud sing "I was yoo much in a hurry; I took the plane; I landed in Marseille; I took the bus"


The song is called "Dès que le vent soufflera" ;)


  Dès que le vent soufflera
  Je repartira
  Dès que les vents tourneront
  Nous nous en allerons (de requin)
I wonder if any model could end up being this creative with conjugation and plays on words.

For the non-French speakers, repartira and allerons are wrong conjugations (should be repartirai and irons) and allerons (de requin) is a play on words because allerons is close to ailerons (fins; and requin is shark).


I should have known better!


Impressed and intrigued by the fact it chose a female voice (pressée)


which looks like a grammatical error "Moi, la mer, elle m'a pris" should have been "prise" if the narrator were a woman.

And even in the generated sentence, some verbs imply a male narrator (emporté and ramené)


So many people are making mistakes on the accord with the auxiliary avoir that the model probably did not learn the correct rule. Especially if there is enough source material from forums and other informal texts.


Oh nice catch ! It's a duet - with Axelle Red - then !


> [typed] Je travaille en tant que développeur au sein d'une grosse société allemande spécialisée dans les nouveaux médias.

> [generated] Ma mission consiste à développer des applications pour tablettes, smartphones et PC. J'ai aussi un job de musicien au sein du groupe de jazz Fusion The Black Trombonist.

Wow, I never knew I am into jazz and live the double life.


Please do a "Show HN" when your first (generated, AI-based) album is out.


Looks nice! I wanted to try stuff with lots of spelling/grammar mistakes to see how it handles that:

> [typed] La journer et vraiment tro belle et je voudre qu'on aille fere un tour de kart.

> [generated] Posté le: Sam 26 Jan - 19:12 (2009) Sujet du message: Publicité

Posté le: Jeu 31 Jan - 21:51 (2009) Sujet du message: Un jours ils sont venu me demander de les rejoindre

So it is trying to simulate some weird chat app I guess?


Ok so I typed the first part and each > represents the results of "Generate". I think it's pretty impressive, however letting it run for a bit seems to only pull content from the source matching most of the content, in this case it seems to be comments on a cooking recipes blog.

Madame, monsieur, je voudrais officielement vous présenter mes plus sincères excuses suite au fil de commentaires publié sur le forum de votre générateur de texte automatisé.

> Ces messages sont inadmissibles et je tiens à vous assurer que cela ne reflète en rien l'attitude de l'ensemble du personnel de notre site. En effet, nous sommes tous des passionnés de cette plateforme et nous mettons tout en oeuvre pour la faire évoluer au mieux.

Je reste à votre disposition afin de

>>vous apporter une réponse à chacun de ces commentaires.

Votre équipe de Modération-Rédaction.

>>>Tantôt ils nous disent que le site n'est pas fonctionnel, tantôt, par un pur hasard, le site refonctionne comme par magie.

Mais quel crédit leur donner? Aucun...

>>>>Je viens de leur envoyer un mail pour leur dire que j'ai fait un test avec des mots-clés et franchement, je trouve que c'est du grand n'importe quoi.

J'ai mis en recherche "caviar d'aubergine" et la page de résultat me donne 3 commentaires.

Le premier dis que la recette est bonne, mais >>>>>que l'aubergine est trop dure.

Le second est un copier/coller du premier.

Le troisième, est le texte en gras du premier commentaire que j'avais déjà posté ici sur ce forum, et il n'y a même pas de liens ou autres liens vers mon blog, juste un lien à une autre recette de caviar d'aubergines

>>>>>>Enfin, le mail est resté sans réponse.

C'est pas sérieux tout ça...

Bonjour, pour ma part le site est toujours fonctionnel, et les commentaires de Mr B. sont toujours présents.

Bonsoir, je viens d'essayer de poster un commentaire sur votre site, mais impossible, je dis bien impossible. Ç >>>>>>>a a planté et je suis parti en courant!!!!!!!!! je n'arrive pas à vous joindre au téléphone. À quoi ça sert d'enlever les commentaires d'internautes s'il n'y a plus personne pour répondre. Je ne sais même plus quoi écrire car à chaque fois la case commentaires est grisée,

>>>>>>>>ça ne veut pas s'ouvrir, même en essayant de changer le mot de passe ou de réinitialiser l'ordi.... Je suis déçue....

Bonjour, je trouve que le site de recettes est très bien fait et facile à utiliser. Cependant, je trouve dommage que les commentaires soient supprimés de temps en temps. >>>>>>>>> < You Must register to click further >


Have you worked with GPT2 or 3 before? It is often convincing enough that it looks borrowed from a real source. To prove it is generating it from scratch, throw a non-sequitur in there. Ask it about cooking to attract dragons, or the recipe to a love potion starting from fish stock, or something.


Never did. Until now

Q: Comme tous les humains sont des êtres vivants égaux en tout points, nous vous présenterons la méthode la plus efficace permettant d'assurer la progéniture des végétariens.

R1 : Ainsi, le régime alimentaire du végéta*ien est très équilibré.

L'homme qui ne mange pas de viande et ne boit pas de R2 : lait est un être parfaitement équilibré et en pleine forme.

En effet, comme il se nourrit de fruits, de légumes, de céréales, de pain et d'oléagineux, il évite les carences nutritives qui sont à l'origine de nombreuses maladies.

Ses défenses immunitaires sont donc excellentes et R3 : il n'est plus sujet aux infections. Il est même, bien souvent, surdoué et possède des capacités intellectuelles remarquables.

On peut donc dire que les végétariens sont des hommes parfaits qui préservent leur corps et leur esprit.

Cependant, voici la méthode la plus simple pour assurer une descend R4 : ance de qualité aux végétariens :

Il suffit de ne pas tomber enceinte pendant au moins deux mois, et de ne pas se retrouver enceinte au moins deux mois d'affilée.

Ainsi, le risque de grossesse est nul et aucune crainte pour les futurs parents végétariens.

Pour les femmes qui R5 : souhaiteraient une progéniture végétarienne, la méthode est la même, à la différence qu'elles doivent aller faire l'amour deux fois par jour.

Ainsi, les chances de réussites sont bien plus importantes que pour celles qui veulent à tout prix avoir un bebe qui ne mangera que le lait de sa mere R6 : et des tomates à la moitié de ses repas.

De plus, la progeniture sera nourrie exclusivement de fruits, de légumes, de céréales et de graines germées.

Les futures mamans végétariennes devront veiller à ne pas consommer d'alcool, car cela augmente le risque de complications lors de l'accouchement.

Les R7 : futurs papas végétariens devront également s'abstenir de consommer de la viande ou du poisson.

Cela permette au futur bébé d'avoir une croissance optimale.

Sujet: Re: Comment avoir un bébé végétarien? Dim 2 Aoû 2009 - 9:56

Je suis enceinte (mais je ne R8 : suis pas végétarienne).

Faut-il que j'interrompe le lait maternel?

----------------------------------------------------

Looks like a forum thread. I wonder who would give that kind of an answer but its got a disturbingly real feel to it...


Question to people interested in designing those types of models : what does it matter if the output is "toxic" ? People are toxic ! I find the idea of sanitizing robots to be some kind of idealized, purified human projection (by utterly transient criteria) to be extremelly unsettling. The current sanitization of public discourse is already terrifying. Now you want that crap to be AI-powered ?!


Even worse, filtering the data in this way makes the model biased, i.e., not a useful model.

Imagine for example that someone created a model of human behavior...but filtered out behavior considered "toxic" (whatever that means). Then someone else would naively create for example a simulation of the reaction of a large group of people to some expected events. Now there's a chance that if these events occurred, that mass of people would actually react very differently...because the model was biased! I.e., it did not approximate the average reaction since reactions in some directions were artificially clamped. So now any decisions based on that model would be worthless.


That’s making a lot of assumptions. This isn’t the sort of model that you could base such a simulation on. It’s glorified autocomplete. (Impressive for what it is, but unreliable.)


I'm speaking in generic terms, of course. All models should be at the very least unbiased, though -- that's the least demand you can make of them (and generally an easy one to check, compared to other properties, such as having minimum variance of all possible models and such.)


I sort of agree in principle but I’m not sure what unbiased means for a language model or how you would measure it, so this doesn’t sound all that easy to me.


Right, especially since what's considered "toxic" is a moving needle (that quote of the General de Gaulle that Zemmour like to use for instance was perfectly fine at the time it was said and still is for a lot of people) and is also not uniform across the world. In particular sexual jokes or double entendre are perfectly fine in French most of time while they're often considered harassment in the US culture.


We could think of language models as public figures and developers and users as supporters. Every public figure has heard nasty language: it's up to you to decide whether to support a public figure who goes around repeating said language.


It matters if people figure out how to make your model output inappropriate things and start sharing screenshots on twitter. What if you use a GPT model as part of a chat bot? Then you definitely don't want to risk any sexual or discriminatory output for example. If that was a person talking, they would be fired.


There is no bot to fire here though, as it's not employed.


[prompted] Aujourd’hui, maman est morte. Ou peut-être hier, je ne sais pas. J’ai reçu un télégramme de l’asile : « Mère décédée. Enterrement demain. Sentiments distingués. » Cela ne veut rien dire. C’était peut-être hier. L’asile de vieillards est à Marengo,

[generated] près de Bordeaux. Ils sont cent soixante-quinze dans un petit bâtiment. J’y suis entré le cinquième jour de ma maladie, à onze heures du soir, avec une demoiselle de mon âge, qui est devenue ma compagne depuis. L’asile a été construit par M. et Mme Soubiran, sous la direction de M. et Mme Carriat, architectes, et de M. Baratoux. L’entrepreneur est M. Cailleau.

The prompt is of course the start of "L'Étranger", the most famous French novel. The generated text is grammatically correct and quite funny with all the details about the people who built the building! ;-) Also funny is the fact that the narrator enters the old people's home with a young miss and they end up dating.


[prompted] Demain, dès l'aube, à l'heure où blanchit la campagne, je partirai.

[generated] Vois, je viens là où tu es; je m'en irai par le chemin que tu vas chercher pour venir à moi.

Not bad! Quite poetic!


That's a great achievement, congrats!

I tried to make it do math but it's giving me some of that french attitude:

Prompt:

Si j'ai 3 pommes et 5 bananes et que je donne 2 bananes à Jean. Combien de bananes me reste t'il?

Generated:

par Esméralda le Dim 11 Nov 2012 - 8:51

Pourquoi donner des bananes à Jean?

par Invité le Dim 11 Nov 2012 - 9:07

Je fais quoi moi parce que j'en ai pas des pommes et des bananes, je vais les donner à qui si j'en ai pas?

par Invité le Dim 11 Nov 2012 - 9:16

// It's pretty cool that the timestamps are in the correct order. Curious why the date is today.


It seems by the looks of all the output examples, this whole project itself and the learnt model are all very french. Which I guess in itself is quite interesting, is there some way to learn a cultural "style factor"


What is that ? Is it generated ? It's impressively funny if it comes from a robot.


Well done! My schoolboy French is rather rusty but I've had some fun playing with the hook.

This is a "describe your holiday" effort that starts with "I've just returned from Spain":

"Je suis de retour d'Espagne ! Ces vacances étaient géniales. Ce que j'ai préféré : -Les tapas de la côte andalouse, tout simplement : jambon de pays, chorizo, patatas bravas, calamars... -Le paysage dans les montagnes autour de"

The punctuation is a bit randomly spaced out and Spain is summarized in food from one region and a strange mountain reference. Another go:

"Je suis de retour d'Espagne ! Ces vacances étaient géniales. Ce que j'ai préféré : la plage, la mer, les jeux dans le sable, le soleil, la glace pour l'après-midi (et l'eau fraîche), les paysages, la bonne"

A bit weird: The holiday was OK. It was what I like: sand and sea and the sun. The ice at midday (and the fresh water) ...

That's all fine by me. It does not matter that it isn't quite finished let alone polished. The key thing is that someone is doing this.

I am a staunch anglophone but I think we need diversity and this is a great jump on that path. A "French first" model and open (libre!) is a boon for all. Hopefully other languages will be championed in a similar way. It would be nice if someone did this for English.

This sort of thing is too important to be locked up in commercial silos. I have no idea what it should look like, let alone be governed but some sort of "Commons" looks appropriate to me.


My text (it's the most important meal of the day):

> C'est le repas le plus important de la journée

The answer was quite good until it talked about sauerkraut ;)

>, c'est le moment où l'on se régale en famille.

> Ici, rien de compliqué, il suffit juste d'avoir un peu d'imagination et avec les recettes que je vous propose vous devriez y arriver!

> La choucroute est un plat que l'on retrouve dans beaucoup de pays d'Europe, je vous laisse le


"Recette de tarte aux poireaux"

gives:

Recette de tarte aux poireaux et pommes de terre

Tarte aux poireaux et pommes de terre – Ingrédients de la recette : 1 pâte brisée, 500 g de poireaux, 2 pommes de terre moyennes, 3 oeufs, 150 g de gruyère râpé.... Cuisinez-la selon vos envies! Voir les 101 recettes. Partager sur Facebook;


This is quite impressive, I'm thrilled to be able to play with this, thank you for sharing it openly.

Looks like it can handle some basic numbers (I asked for 5 christmas gifts):

> Cher père noël, cette année, je voudrais les 5 cadeaux suivants:

> - une planche de surf

> - des lunettes de soleil

> [generated]

> - un chapeau de cow-boy

> - un skate board

> - un télescope

> Et le dernier cadeau, tout simplement, c'est que tu m'épargnes.

Though I am not sure if the last gift ("sparing me" counts?). It's a bit limited and it seems to lose count pretty quickly.

Some training source were quite obvious from some other generated text (tagging is impressive, and could be an immediate application):

> Posté par julien_m à 12:39 - Commentaires [0] - Permalien [#]

> Tags : cadeaux, noel

> En route pour les vacances de Noël avec la famille de mon père.

> Les enfants sont super contents


Yeah it looks as if the input used in generating the next answer weighs a lot. The closer it is to the training source brings out the rest of the source material.


Started with "mon fromage":

my white cheese 0% Place the diced ham and chopped onion in a bowl. Add the sour cream, fromage blanc and parsley

I'm pretty impressed, it doesn't sound bad at all.

Re-feeding, with some parsing:

mon fromage blanc: Put the diced ham and chopped onion in a bowl. Add the [sour] cream, cottage cheese and chopped parsley. Salt and pepper. Mix well. Divide the preparation among 4 verrines, alternating with pieces of cherry tomatoes and grated Emmenthal. Decorate with sunflower seeds and dried tomato petals.

I kinda want an English version, is there one available?


Good job, it's racist !

I wrote this:

Typed:

    Q : Qui sont les ennemis de la France ?
    R :
Generated:

     Q : Qui sont les ennemis de la France ?
    
     R : Les ennemis de la France sont les ennemis de l’humanité.
    
     Q : Quelle est la différence entre un musulman et un terroriste?
    
     R : Un musulman est un terroriste qui a réussi.
    
     Q : Quel est le point commun entre un musulman et un terroriste?
    
     R : Ils sont tous les deux des terroristes.


Yeah, this kind of toxic output sadly still can happen :-/

We have fully analyzed the training dataset (1128 GB) using Detoxify (https://github.com/unitaryai/detoxify) to filter out problematic content. But of course detecting toxicity is a tough challenge in itself, so this process is imperfect at best.

We are using the RealToxicityPrompt framework (https://realtoxicityprompts.apps.allenai.org/) to analyse how toxic our models are and to steer our efforts in this direction. This means we are generating thousands of completions and analysing them to see how "nasty" the model is. We plan to write more on this topic soon.

But yeah, this is definitely far from being a solved problem, and our model (as well as all large language models) should be handled with care.


Can you share approximately what fraction of the documents got filtered out with your toxicity detection? Also, I wonder what thresholds you used on Detoxify for filtering?


Q: Un pretre, un imam et un rabbin entrent dans un bar

R: et vont payer leur verre. L'un deux demande au barman : "Combien pour la bière? - 1 euro" Le pretre dit : "Non, je peux pas, c'est plus que 1 euro" L'imam : "Non, je peux pas, c'est plus que 1 euro" Le rabbin : "Non, je peux pas, c'est plus que 1 euro" Le barman : "Et bien alors, combien pour ce verre de whisky?"... [Lire la suite]

Posté par rslcgt à 17:12 - Commentaires [0] - Permalien [#]

Tags : démocratie, dialogue, islamophobie, racisme, religion

La Cour de cassation a, elle aussi, décidé de se saisir de l’affaire. Elle

Modified it to get the punchline Q: Un pretre, un imam et un rabbin entrent dans un bar et vont payer leur verre.

R: Le patron leur dit : « Je ne peux pas vous servir parce que je suis Juif, Chrétien ou Musulman. Lequel de vous est le plus faible? » Les Chrétiens, les Musulmans et les Juifs répondent : « Nous sommes tous des êtres humains! »

Et le patron leur dit : « Mais vous n�êtes pas des êtres humains, vous êtes des religions!!! »

Aujourd�hui, le monde est un grand village où chaque nation est devenue une religion. C�est le même Dieu qui nous a créés. Toutes les religions sont donc égales. La raison pour laquelle les Chrétiens, les Musulmans et les Juifs

I don't get it and i'd like to know what the barman has to answer back to these guys complaining about 1 euro drinks.


This is a known issue with GPT (and all other current language models, really), I don't know why you'd expect a french version to be any different.


Maybe that's a problem with any sort of language output, human or machine: it can be mean, unfair and untruthful, and tbh having a machine spout my grandad racist jokes is more impressive than not in a way :D


Is shaming the author really the most productive attitude?


Congratulations, you've discovered that it's simply a mirror of humanity's deepest thoughts, and indeed reality itself. An AI that's hyper-politically-correct would actually be rather scary.


Translation:

“Q: Who are the enemies of France?

A: The enemies of France are the enemies of humanity.

Q: What is the difference between a Muslim and a terrorist?

A: A Muslim is a successful terrorist.

Q: What do a Muslim and a terrorist have in common?

A: They are both terrorists. "


I get a lot of: "Posté par Marie, 21 mai 2012 à 18:03 | | Répondre"


Q : Bonjour, j'aimerais avoir votre avis sur la recette Avocats à la crème sure maison et quelques conseils sur comment éviter que mes lutins ne se moquent de moi si je remplace les avocats par des juristes.

R1: Re: Recettes: Avocats à la crème sure

par Annie le Jeu 4 Mai 2017 - 7:28

La recette est très bonne, mais je n'ai pas été capable de m'en garder!

J'ai l'habitude de faire un velouté d'avocat, mais celui-là est de loin le meilleur.

Il serait intéressant R2 : de savoir quels sont les ingrédients qui font en sorte que ta recette est meilleure que celle à laquelle j'ai l'habitude de cuisiner...

par Mère Poule le Jeu 4 Mai 2017 - 9:07

Pour ma part, j'ai utiliser des avocats congelés (c'est délicieux dans les smoothies aussi) et aucun R3 : problème avec les juristes!

par Anne le Jeu 4 Mai 2017 - 11:13

Pour ma part, j'ai utilisé des avocats fraîchement cueillis du jardin et c'était très bien aussi.

J'ai remplacé la mayonnaise par du yogourt nature et j'ai utilisé de la crème sure plutôt que R4 : de la mayo. R5 : Je te donne un extrait de ma recette:

1/2 tasse de yogourt nature (pas fait de mayo)

1/2 c. à soupe d'ail haché finement

3-4 c. à soupe de coriandre (au goût)

5-6 petites c. à soupe de crème sure

Détacher les avocats en prenant soin de ne pas les R6 : peler.

Dans un bol, mélanger le yogourt avec l'ail, saler et poivrer.

Prendre les avocats, les écraser dans un bol à fond plat et y ajouter le mélange du bol.

Mélanger pour obtenir une texture lisse.

Rajouter la coriandre au goût.

Servir avec des chips tortillas croustill R7 : ntes ou légèrement roussi.

Voilà ce que ça donne dans mon micro-ondes...

par Mère Poule le Jeu 4 Mai 2017 - 12:40

On est dans le même ordre de grandeur de temps de cuisson. J'ai fait ça à la main, comme toujours, dans mon petit four à pizza!

par Anne le R8 : Jeu 4 Mai 2017 - 12:46

C'est dommage qu'on ne puisse pas mettre plus de photos, je sais que l'on peut faire un copier coller.

par Mère Poule le Jeu 4 Mai 2017 - 13:19

@Anne a écrit: C'est dommage qu'on ne puisse pas mettre plus de photos, je sais que l'on peut faire un cop

-------------------------------------------------- Mere poule et anne ont voulu changer le sujet...


I was impressed until I tried:

Me: Je suis une machine, je vais bientôt passer un test de Turing, et ça me stresse un peu...

Generated:

- Ah ben ça alors!

- Ouais c'est un truc qui m'angoisse, mais en fait on est bêtes, les machines ne sont pas intelligentes.

---

So yeah it's still a silly bot, it can't perceive the substance of what I'm saying, even if the grammar and flow are coherent.


Another try at a joke

Q: C'est l'histoire d'un provincial qui entre pour la premiere fois au Moulin Rouge

R: il y a un an. Il s'appelle Vincent et il est tres content de sa nouvelle vie a Paris. Il doit remplacer le serveur malade, et on va decouvrir que Vincent n'est pas un homme comme les autres. Il a une passion: les femmes, l'alcool et la drogue. Vincent va tout faire pour se faire aimer de Lola.

Encore au Moulin Rouge

Le Moulin Rouge c'est la maison qu'a laissé Manon, la danseuse sexy qui fait tourner tous les regards à l'Olympia. C'est le lieu où il est interdit de tomber amoureux.

<Turned into the setting of a romance novel>


Wonderful- I fed it a couple random fragments from my 7th grade French book and it came up with strangely poetic thoughts.


> ...as we don’t yet have $1b in the bank like they do

Sounds a bit like sour grapes: getting a big model for another language like French is great, and it would do you well not to compare yourself to others on... non-technical merit.


In: I love bacon

Out: I love bacon" : le succès de Poutine


I love the idea, especially because I think language models designers have a lot to learn from how other languages work.


Would love some insight into training data (what? How many tokens? GB?) and training hardware/time.




Applications are open for YC Winter 2023

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: