I think it is likely that you only need to concern yourself about the AT protocol (set 2).
Set 1 is XT and used by Model F XT, some early third-party keyboards. Many third-party keyboards that speak XT speak AT too - and users change protocol using a toggle switch on the back or bottom of the keyboard.
I think there is some code in the protocol for the host to tell the keyboard which protocol to talk, but I don't think anybody ever used that.
Set 1 is still used internally by Windows, however... because of historical reasons. When IBM made the AT, they put a microcontroller in the machine that converted from AT to XT scancodes so that DOS programs that interfaced the hardware directly would still work.
Set 2 is AT and (PS/2 is the AT protocol with a smaller plug), but it has been extended now and again and the codes can be a bit complex.
Set 3 was used only by IBM's terminals to their own mainframes. I don't think any PC keyboard or PC has ever supported it. If the keyboard speaks Set 3, then it is most likely a type of Model M from IBM.
I suppose that you intend to build and program the protocol converter. Luckily there are some existing resources:
* Bluetooth keyboards (and mice and gamepads etc.) are using the USB HID protocol in low-speed mode, so you could reuse some USB code.
* Hasu's
tmk_keyboard firmware for the Atmel AVR microcontrollers could be a starting point. It is a library suite with different targets for different keyboard controllers and PS/2-to-USB converter. The most common microcontroller to use is the ATmega32u4, which is on the
Teensy 2.0 and the Arduino Pro Micro boards (cheaper on eBay).
* Adafruit has a couple of Bluetooth modules. There has been talk about them, but I have not seen anybody use one in a keyboard yet. If you made code for them and released to the community as Open Source then I think that would be much appreciated.
One module is a ATMega32u4 microcontroller with USB and Bluetooth.
The other (Bluefruit EZ-key) is not programmable but you won't need to write any actual Bluetooth code - just feed it keyboard data over a serial line.